Compare commits
No commits in common. 'wilder' and 'master' have entirely different histories.
44 changed files with 438 additions and 605 deletions
@ -1,79 +0,0 @@ |
||||
name: CI |
||||
|
||||
on: |
||||
push: |
||||
branches: |
||||
- master |
||||
pull_request: |
||||
branches: |
||||
- master |
||||
|
||||
jobs: |
||||
build: |
||||
name: build ${{ matrix.os }} |
||||
runs-on: ${{ matrix.os }} |
||||
strategy: |
||||
fail-fast: false |
||||
matrix: |
||||
os: [ubuntu-22.04, ubuntu-24.04] |
||||
steps: |
||||
- name: Checkout |
||||
uses: actions/checkout@v4 |
||||
|
||||
- name: Install build dependencies |
||||
env: |
||||
PACKAGES: > |
||||
ccache |
||||
libboost-dev |
||||
libboost-filesystem-dev |
||||
libboost-locale-dev |
||||
libboost-program-options-dev |
||||
libboost-regex-dev |
||||
libboost-thread-dev |
||||
libcurl4-gnutls-dev |
||||
libfftw3-dev |
||||
libmpdclient-dev |
||||
libncurses-dev |
||||
libreadline-dev |
||||
libtag1-dev |
||||
zlib1g-dev |
||||
run: | |
||||
sudo apt update -qq |
||||
sudo apt install -y --no-install-recommends ${{ env.PACKAGES }} |
||||
|
||||
- name: Set up ccache |
||||
uses: actions/cache@v4 |
||||
with: |
||||
path: ${{ github.workspace }}/.ccache |
||||
key: ccache-${{ matrix.os }}-${{ github.run_id }} |
||||
restore-keys: ccache-${{ matrix.os }}- |
||||
|
||||
- name: Run autoreconf |
||||
run: | |
||||
autoreconf -fiv |
||||
|
||||
- name: Build ncmpcpp (light) |
||||
env: |
||||
CCACHE_DIR: ${{ github.workspace }}/.ccache/light |
||||
run: | |
||||
CC='ccache gcc' CXX='ccache g++' ./configure \ |
||||
--disable-outputs \ |
||||
--disable-visualizer \ |
||||
--disable-clock \ |
||||
--without-fftw \ |
||||
--without-taglib \ |
||||
--with-lto=$(nproc) |
||||
make -j$(nproc) || exit 1 |
||||
|
||||
- name: Build ncmpcpp (full) |
||||
env: |
||||
CCACHE_DIR: ${{ github.workspace }}/.ccache/full |
||||
run: | |
||||
CC='ccache gcc' CXX='ccache g++' ./configure \ |
||||
--enable-outputs \ |
||||
--enable-visualizer \ |
||||
--enable-clock \ |
||||
--with-fftw \ |
||||
--with-taglib \ |
||||
--with-lto=$(nproc) |
||||
make -j$(nproc) || exit 1 |
||||
@ -0,0 +1,158 @@ |
||||
#!/bin/sh |
||||
# Run this to set up the build system: configure, makefiles, etc. |
||||
# (at one point this was based on the version in enlightenment's cvs) |
||||
|
||||
package="ncmpcpp" |
||||
|
||||
olddir="`pwd`" |
||||
srcdir="`dirname $0`" |
||||
test -z "$srcdir" && srcdir=. |
||||
cd "$srcdir" |
||||
DIE= |
||||
AM_VERSIONGREP="sed -e s/.*[^0-9\.]\([0-9]\.[0-9]\).*/\1/" |
||||
AC_VERSIONGREP="sed -e s/.*[^0-9\.]\([0-9]\.[0-9][0-9]\).*/\1/" |
||||
VERSIONMKINT="sed -e s/[^0-9]//" |
||||
if test -n "$AM_FORCE_VERSION" |
||||
then |
||||
AM_VERSIONS="$AM_FORCE_VERSION" |
||||
else |
||||
AM_VERSIONS='1.6 1.7 1.8 1.9' |
||||
fi |
||||
if test -n "$AC_FORCE_VERSION" |
||||
then |
||||
AC_VERSIONS="$AC_FORCE_VERSION" |
||||
else |
||||
AC_VERSIONS='2.58 2.59' |
||||
fi |
||||
|
||||
versioned_bins () |
||||
{ |
||||
bin="$1" |
||||
needed_int=`echo $VERNEEDED | $VERSIONMKINT` |
||||
for i in $VERSIONS |
||||
do |
||||
i_int=`echo $i | $VERSIONMKINT` |
||||
if test $i_int -ge $needed_int |
||||
then |
||||
echo $bin-$i $bin$i $bin-$i_int $bin$i_int |
||||
fi |
||||
done |
||||
echo $bin |
||||
} |
||||
|
||||
for c in autoconf autoheader automake aclocal |
||||
do |
||||
uc=`echo $c | tr a-z A-Z` |
||||
eval "val=`echo '$'$uc`" |
||||
if test -n "$val" |
||||
then |
||||
echo "$uc=$val in environment, will not attempt to auto-detect" |
||||
continue |
||||
fi |
||||
|
||||
case "$c" in |
||||
autoconf|autoheader) |
||||
VERNEEDED=`fgrep AC_PREREQ configure.ac | $AC_VERSIONGREP` |
||||
VERSIONS="$AC_VERSIONS" |
||||
pkg=autoconf |
||||
;; |
||||
automake|aclocal) |
||||
VERNEEDED=`fgrep AUTOMAKE_OPTIONS Makefile.am | $AM_VERSIONGREP` |
||||
VERSIONS="$AM_VERSIONS" |
||||
pkg=automake |
||||
;; |
||||
esac |
||||
printf "checking for $c ... " |
||||
for x in `versioned_bins $c`; do |
||||
($x --version < /dev/null > /dev/null 2>&1) > /dev/null 2>&1 |
||||
if test $? -eq 0 |
||||
then |
||||
echo $x |
||||
eval $uc=$x |
||||
break |
||||
fi |
||||
done |
||||
eval "val=`echo '$'$uc`" |
||||
if test -z "$val" |
||||
then |
||||
if test $c = $pkg |
||||
then |
||||
DIE="$DIE $c=$VERNEEDED" |
||||
else |
||||
DIE="$DIE $c($pkg)=$VERNEEDED" |
||||
fi |
||||
fi |
||||
done |
||||
|
||||
if test -n "$LIBTOOLIZE" |
||||
then |
||||
echo "LIBTOOLIZE=$LIBTOOLIZE in environment," \ |
||||
"will not attempt to auto-detect" |
||||
else |
||||
printf "checking for libtoolize ... " |
||||
for x in libtoolize glibtoolize |
||||
do |
||||
($x --version < /dev/null > /dev/null 2>&1) > /dev/null 2>&1 |
||||
if test $? -eq 0 |
||||
then |
||||
echo $x |
||||
LIBTOOLIZE=$x |
||||
break |
||||
fi |
||||
done |
||||
fi |
||||
|
||||
if test -z "$LIBTOOLIZE" |
||||
then |
||||
DIE="$DIE libtoolize(libtool)" |
||||
fi |
||||
|
||||
if test -n "$DIE" |
||||
then |
||||
echo "You must have the following installed to compile $package:" |
||||
for i in $DIE |
||||
do |
||||
printf ' ' |
||||
echo $i | sed -e 's/(/ (from /' -e 's/=\(.*\)/ (>= \1)/' |
||||
done |
||||
echo "Download the appropriate package(s) for your system," |
||||
echo "or get the source from one of the GNU ftp sites" |
||||
echo "listed in http://www.gnu.org/order/ftp.html" |
||||
exit 1 |
||||
fi |
||||
|
||||
echo "Generating configuration files for $package, please wait...." |
||||
|
||||
ACLOCAL_FLAGS="$ACLOCAL_FLAGS" |
||||
|
||||
# /usr/share/aclocal is most likely included by default, already... |
||||
ac_local_paths=' |
||||
/usr/local/share/aclocal |
||||
/sw/share/aclocal |
||||
/usr/pkg/share/aclocal |
||||
/opt/share/aclocal |
||||
/usr/gnu/share/aclocal |
||||
' |
||||
|
||||
for i in $ac_local_paths; do |
||||
if test -d "$i"; then |
||||
ACLOCAL_FLAGS="$ACLOCAL_FLAGS -I $i" |
||||
# we probably only want one of these... |
||||
break |
||||
fi |
||||
done |
||||
|
||||
echo " $ACLOCAL $ACLOCAL_FLAGS" |
||||
$ACLOCAL $ACLOCAL_FLAGS || exit 1 |
||||
|
||||
echo " $AUTOHEADER" |
||||
$AUTOHEADER || exit 1 |
||||
|
||||
echo " $LIBTOOLIZE --automake" |
||||
$LIBTOOLIZE --automake || exit 1 |
||||
|
||||
echo " $AUTOMAKE --add-missing $AUTOMAKE_FLAGS" |
||||
$AUTOMAKE --add-missing $AUTOMAKE_FLAGS || exit 1 |
||||
|
||||
echo " $AUTOCONF" |
||||
$AUTOCONF || exit 1 |
||||
@ -0,0 +1,29 @@ |
||||
/***************************************************************************
|
||||
* Copyright (C) 2008-2021 by Andrzej Rybczak * |
||||
* andrzej@rybczak.net * |
||||
* * |
||||
* This program is free software; you can redistribute it and/or modify * |
||||
* it under the terms of the GNU General Public License as published by * |
||||
* the Free Software Foundation; either version 2 of the License, or * |
||||
* (at your option) any later version. * |
||||
* * |
||||
* This program is distributed in the hope that it will be useful, * |
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of * |
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * |
||||
* GNU General Public License for more details. * |
||||
* * |
||||
* You should have received a copy of the GNU General Public License * |
||||
* along with this program; if not, write to the * |
||||
* Free Software Foundation, Inc., * |
||||
* 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. * |
||||
***************************************************************************/ |
||||
|
||||
#if defined(__GNUC__) && __GNUC__ >= 3 |
||||
# define GNUC_NORETURN __attribute__((noreturn)) |
||||
# define GNUC_UNUSED __attribute__((unused)) |
||||
# define GNUC_PRINTF(a, b) __attribute__((format(printf, a, b))) |
||||
#else |
||||
# define GNUC_NORETURN |
||||
# define GNUC_UNUSED |
||||
# define GNUC_PRINTF(a, b) |
||||
#endif |
||||
Loading…
Reference in new issue