diff --git a/.github/workflows/linux.yml b/.github/workflows/linux.yml index 5fab1030..f71a4720 100644 --- a/.github/workflows/linux.yml +++ b/.github/workflows/linux.yml @@ -10,7 +10,7 @@ jobs: build_linux_autotools_default_args: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v7 - name: Install doc packages run: sudo apt-get install -y texlive texinfo texi2html doxygen - name: create configure @@ -27,7 +27,7 @@ jobs: build_linux_autotools_other_args: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v7 - name: Install doc packages run: sudo apt-get install -y texlive texinfo texi2html doxygen - name: create configure @@ -44,7 +44,7 @@ jobs: build_linux_autotools_gcc: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v7 - name: create configure run: autoreconf -i - name: configure gcc @@ -57,7 +57,7 @@ jobs: build_linux_autotools_clang: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v7 - name: create configure run: autoreconf -i - name: configure clang @@ -68,7 +68,7 @@ jobs: build_linux_autotools_crosscompile_mingw32: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v7 - name: Install doc packages run: sudo apt-get install -y gcc-mingw-w64 - name: create configure @@ -82,7 +82,7 @@ jobs: build_linux_autotools_prereleasecheck: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v7 - name: Install doc packages run: sudo apt-get install -y texlive texinfo texi2html doxygen - name: create configure @@ -95,7 +95,7 @@ jobs: build_linux_autotools_docs: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v7 - name: Install doc packages run: sudo apt-get install -y texlive texinfo texi2html doxygen - name: create configure @@ -110,7 +110,7 @@ jobs: build_linux_autotools_example: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v7 - name: Install doc packages run: sudo apt-get install -y texlive texinfo texi2html doxygen - name: create configure @@ -137,7 +137,7 @@ jobs: build_linux_cmake: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v7 - name: cmake cversion run: cmake --version - name: create configs @@ -152,7 +152,7 @@ jobs: build_linux_scanbuild: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v7 - name: Install scan-build packages run: sudo apt-get install -y clang-tools - name: create configure @@ -172,7 +172,7 @@ jobs: build_linux_cmake_project_usage: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v7 - name: run test run: | cmake --version || exit 1 diff --git a/.github/workflows/osx.yml b/.github/workflows/osx.yml index 5fbc801a..a1100097 100644 --- a/.github/workflows/osx.yml +++ b/.github/workflows/osx.yml @@ -10,16 +10,16 @@ jobs: build_osx_autotools_default_args: runs-on: macos-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v7 # Brew may not have permission to install its packages - name: change brew install folder permissions run: sudo chmod -R a+rwx /usr/local/share/ || mkdir -p /usr/local/share/ -m a+rwx - - name: install maxtex - run: brew install --cask mactex - name: install doc programs - run: brew install texi2html doxygen + run: brew install texlive texi2html doxygen texinfo - name: install automake run: brew install automake + - name: install libtool + run: brew install libtool - name: install pkg-config run: brew install pkgconfig - name: create configure @@ -36,16 +36,16 @@ jobs: build_osx_autotools_other_args: runs-on: macos-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v7 # Brew may not have permission to install its packages - name: change brew install folder permissions run: sudo chmod -R a+rwx /usr/local/share/ || mkdir -p /usr/local/share/ -m a+rwx - - name: install maxtex - run: brew install --cask mactex - name: install doc programs - run: brew install texi2html doxygen + run: brew install texlive texi2html doxygen texinfo - name: install automake run: brew install automake + - name: install libtool + run: brew install libtool - name: install pkg-config run: brew install pkgconfig - name: create configure @@ -62,12 +62,14 @@ jobs: build_osx_autotools_gcc: runs-on: macos-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v7 # Brew may not have permission to install its packages - name: change brew install folder permissions run: sudo chmod -R a+rwx /usr/local/share/ || mkdir -p /usr/local/share/ -m a+rwx - name: install automake run: brew install automake + - name: install libtool + run: brew install libtool - name: install pkg-config run: brew install pkgconfig - name: create configure @@ -82,12 +84,14 @@ jobs: build_osx_autotools_clang: runs-on: macos-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v7 # Brew may not have permission to install its packages - name: change brew install folder permissions run: sudo chmod -R a+rwx /usr/local/share/ || mkdir -p /usr/local/share/ -m a+rwx - name: install automake run: brew install automake + - name: install libtool + run: brew install libtool - name: install pkg-config run: brew install pkgconfig - name: create configure @@ -102,16 +106,16 @@ jobs: build_osx_autotools_example: runs-on: macos-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v7 # Brew may not have permission to install its packages - name: change brew install folder permissions run: sudo chmod -R a+rwx /usr/local/share/ || mkdir -p /usr/local/share/ -m a+rwx - - name: install maxtex - run: brew install --cask mactex - name: install doc programs - run: brew install texi2html doxygen + run: brew install texlive texi2html doxygen texinfo - name: install automake run: brew install automake + - name: install libtool + run: brew install libtool - name: install pkg-config run: brew install pkgconfig - name: create configure @@ -138,7 +142,7 @@ jobs: build_osx_cmake: runs-on: macos-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v7 - name: cmake cversion run: cmake --version - name: create configs diff --git a/CMakeLists.txt b/CMakeLists.txt index ff4336b9..be54b579 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -182,6 +182,7 @@ check_function_exists(mkstemp HAVE_MKSTEMP) check_function_exists(realloc HAVE_REALLOC) check_function_exists(setenv HAVE_DECL_SETENV) check_function_exists(sigaction HAVE_SIGACTION) +check_function_exists(setitimer HAVE_SETITIMER) check_function_exists(strdup HAVE_DECL_STRDUP) check_function_exists(strsignal HAVE_DECL_STRSIGNAL) check_function_exists(_getpid HAVE__GETPID) diff --git a/cmake/config.h.in b/cmake/config.h.in index cea2f3b3..9ef7b560 100644 --- a/cmake/config.h.in +++ b/cmake/config.h.in @@ -270,6 +270,9 @@ typedef uint64_t uintmax_t; /* Define to 1 if you have the 'sigaction' function. */ #cmakedefine HAVE_SIGACTION 1 +/* Define to 1 if you have the 'setitimer' function. */ +#cmakedefine HAVE_SETITIMER 1 + /* Define to 1 if you have the header file. */ #cmakedefine HAVE_STDARG_H 1 diff --git a/lib/timer_delete.c b/lib/timer_delete.c index 4b0af79f..5ac4fd52 100644 --- a/lib/timer_delete.c +++ b/lib/timer_delete.c @@ -57,5 +57,6 @@ int timer_delete(timer_t timerid CK_ATTRIBUTE_UNUSED) * There is no support for alternative timers, so there is nothing * to delete or reset. */ + return 0; #endif } diff --git a/lib/timer_settime.c b/lib/timer_settime.c index 4e194df1..e03012e2 100644 --- a/lib/timer_settime.c +++ b/lib/timer_settime.c @@ -61,5 +61,6 @@ int timer_settime(timer_t timerid CK_ATTRIBUTE_UNUSED, /* * There is no support for timers on the platform. */ + return 0; #endif }