From db2fe6a6050a53ed2d0d755f424d3399adc8e84d Mon Sep 17 00:00:00 2001 From: Marc Kleine-Budde Date: Thu, 23 May 2024 09:06:59 +0200 Subject: [PATCH 1/5] travis.yml: remove Travis is not used anymore. --- .travis.yml | 164 ---------------------------------------------------- 1 file changed, 164 deletions(-) delete mode 100644 .travis.yml diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 5c5e11e..0000000 --- a/.travis.yml +++ /dev/null @@ -1,164 +0,0 @@ -language: c - -matrix: - include: - -# native - - - env: test="x64 4.8.4 (make)" - os: linux - dist: trusty - compiler: gcc - script: make - - - env: test="x64 4.8.4 (autotools)" - os: linux - dist: trusty - compiler: gcc - script: ./autogen.sh && ./configure CFLAGS="-Werror -Wno-unused-result" && make distcheck - - - env: test="x64 5.0 (autotools)" - os: linux - dist: trusty - compiler: clang - script: ./autogen.sh && ./configure CFLAGS="-Werror -Wno-unused-result" && make distcheck - - - env: test="x64 4.8.4 (CMake gcc)" - os: linux - dist: trusty - compiler: gcc - before_script: - - mkdir gcc_rel && cd gcc_rel - - cmake .. - script: make - - - env: test="x64 5.0 (CMake clang)" - os: linux - dist: trusty - compiler: clang - before_script: - - mkdir clang_rel && cd clang_rel - - cmake .. - script: make - - - env: test="x64 5.0 (CMake clang - Ninja) Debug" - os: linux - dist: trusty - compiler: clang - before_script: - - mkdir clang_ninja_dbg && cd clang_ninja_dbg - - cmake .. -GNinja -DCMAKE_BUILD_TYPE=Debug - script: ninja - -# ppc64le - - - env: test="ppc64le 4.8.4 (make)" - os: linux - dist: trusty - compiler: gcc - script: make - arch: ppc64le - - - env: test="ppc64le 4.8.4 (autotools)" - os: linux - dist: trusty - compiler: gcc - script: ./autogen.sh && ./configure CFLAGS="-Werror -Wno-unused-result" && make distcheck - arch: ppc64le - - - env: test="ppc64le 5.0 (autotools)" - os: linux - dist: trusty - compiler: clang - script: ./autogen.sh && ./configure CFLAGS="-Werror -Wno-unused-result" && make distcheck - arch: ppc64le - - - env: test="ppc64le 4.8.4 (CMake gcc)" - os: linux - dist: trusty - compiler: gcc - before_script: - - mkdir gcc_rel && cd gcc_rel - - cmake .. - script: make - arch: ppc64le - - - env: test="ppc64le 5.0 (CMake clang)" - os: linux - dist: trusty - compiler: clang - before_script: - - mkdir clang_rel && cd clang_rel - - cmake .. - script: make - arch: ppc64le - - - env: test="ppc64le 5.0 (CMake clang - Ninja) Debug" - os: linux - dist: trusty - compiler: clang - before_script: - - mkdir clang_ninja_dbg && cd clang_ninja_dbg - - cmake .. -GNinja -DCMAKE_BUILD_TYPE=Debug - script: ninja - arch: ppc64le - -# Android - - - env: test="Android NDK (CMake)" - os: linux - language: android - android: - components: - - build-tools-25.0.2 - install: - - echo y | sdkmanager "ndk-bundle" - - echo y | sdkmanager "cmake;3.6.4111459" - before_script: - - export ANDROID_NDK_HOME=$ANDROID_HOME/ndk-bundle - - export ANDROID_CMAKE=$ANDROID_HOME/cmake/3.6.4111459/bin/cmake - - export ANDROID_TOOLCHAIN_FILE=$ANDROID_NDK_HOME/build/cmake/android.toolchain.cmake - script: - - pushd . && mkdir android15_armeabiv7a_rel && cd android15_armeabiv7a_rel - - $ANDROID_CMAKE -DANDROID_PLATFORM=android-15 -DANDROID_ABI=armeabi-v7a -DCMAKE_BUILD_TYPE=Release -DCMAKE_TOOLCHAIN_FILE=$ANDROID_TOOLCHAIN_FILE .. - - make && popd - - - pushd . && mkdir android15_x86_rel && cd android15_x86_rel - - $ANDROID_CMAKE -DANDROID_PLATFORM=android-15 -DANDROID_ABI=x86 -DCMAKE_BUILD_TYPE=Release -DCMAKE_TOOLCHAIN_FILE=$ANDROID_TOOLCHAIN_FILE .. - - make && popd - - - pushd . && mkdir android21_arm64-v8a_rel && cd android21_arm64-v8a_rel - - $ANDROID_CMAKE -DANDROID_PLATFORM=android-21 -DANDROID_ABI=arm64-v8a -DCMAKE_BUILD_TYPE=Release -DCMAKE_TOOLCHAIN_FILE=$ANDROID_TOOLCHAIN_FILE .. - - make && popd - - - pushd . && mkdir android21_x86_64_rel && cd android21_x86_64_rel - - $ANDROID_CMAKE -DANDROID_PLATFORM=android-21 -DANDROID_ABI=x86_64 -DCMAKE_BUILD_TYPE=Release -DCMAKE_TOOLCHAIN_FILE=$ANDROID_TOOLCHAIN_FILE .. - - make && popd - - - pushd . && mkdir android15_armeabiv7a_dbg && cd android15_armeabiv7a_dbg - - $ANDROID_CMAKE -DANDROID_PLATFORM=android-15 -DANDROID_ABI=armeabi-v7a -DCMAKE_BUILD_TYPE=Debug -DCMAKE_TOOLCHAIN_FILE=$ANDROID_TOOLCHAIN_FILE .. - - make && popd - - - pushd . && mkdir android15_x86_dbg && cd android15_x86_dbg - - $ANDROID_CMAKE -DANDROID_PLATFORM=android-15 -DANDROID_ABI=x86 -DCMAKE_BUILD_TYPE=Debug -DCMAKE_TOOLCHAIN_FILE=$ANDROID_TOOLCHAIN_FILE .. - - make && popd - - - pushd . && mkdir android21_arm64-v8a_dbg && cd android21_arm64-v8a_dbg - - $ANDROID_CMAKE -DANDROID_PLATFORM=android-21 -DANDROID_ABI=arm64-v8a -DCMAKE_BUILD_TYPE=Debug -DCMAKE_TOOLCHAIN_FILE=$ANDROID_TOOLCHAIN_FILE .. - - make && popd - - - pushd . && mkdir android21_x86_64_dbg && cd android21_x86_64_dbg - - $ANDROID_CMAKE -DANDROID_PLATFORM=android-21 -DANDROID_ABI=x86_64 -DCMAKE_BUILD_TYPE=Debug -DCMAKE_TOOLCHAIN_FILE=$ANDROID_TOOLCHAIN_FILE .. - - make && popd - -addons: - apt: - packages: - - autoconf - - automake - - libtool - - m4 - - cmake - - ninja-build - sources: - - ubuntu-toolchain-r-test From bc88e89caf9abb158e9f71cb6f9afbdae1997e07 Mon Sep 17 00:00:00 2001 From: Marc Kleine-Budde Date: Tue, 28 May 2024 08:27:53 +0200 Subject: [PATCH 2/5] github-actions: replace autotools by cmake --- .github/workflows/autotools.yml | 19 ----------- .github/workflows/compile.yml | 59 +++++++++++++++++++++++++++++++++ CMakeLists.txt | 7 ++++ 3 files changed, 66 insertions(+), 19 deletions(-) delete mode 100644 .github/workflows/autotools.yml create mode 100644 .github/workflows/compile.yml diff --git a/.github/workflows/autotools.yml b/.github/workflows/autotools.yml deleted file mode 100644 index 5311030..0000000 --- a/.github/workflows/autotools.yml +++ /dev/null @@ -1,19 +0,0 @@ -name: C with autotools - -on: [push, pull_request] - -jobs: - build: - - runs-on: ubuntu-latest - - steps: - - uses: actions/checkout@v1 - - name: autogen - run: ./autogen.sh - - name: configure - run: ./configure - - name: make - run: make - - name: make distcheck - run: make distcheck diff --git a/.github/workflows/compile.yml b/.github/workflows/compile.yml new file mode 100644 index 0000000..8235c70 --- /dev/null +++ b/.github/workflows/compile.yml @@ -0,0 +1,59 @@ +name: native and cross + +on: [push, pull_request] + +jobs: + build: + runs-on: ubuntu-24.04 + strategy: + fail-fast: false + matrix: + release: + - "ubuntu:20.04" + - "ubuntu:22.04" + - "ubuntu:24.04" + - "ubuntu:rolling" + - "debian:oldstable-slim" + - "debian:stable-slim" + - "debian:testing-slim" + - "debian:unstable-slim" + + steps: + - uses: actions/checkout@v4 + + - name: Prepare ${{ matrix.release }} container + run: | + podman version + podman run --name stable -di --userns=keep-id:uid=1000,gid=1000 -v "$PWD":/home -w /home ${{ matrix.release }} bash + podman exec -i stable uname -a + podman exec -i stable id + podman exec -i -u root stable apt update + podman exec -e DEBIAN_FRONTEND='noninteractive' -i -u root stable apt install -o APT::Install-Suggests=false -qy \ + clang \ + cmake \ + gcc \ + make + + - name: Configure & Build with gcc + env: + cc: gcc + run: | + podman exec -i stable cmake -DCMAKE_BUILD_TYPE=Debug -DCMAKE_C_COMPILER=${cc} -DENABLE_WERROR=ON -B build-${cc} + podman exec -i stable cmake --build build-${cc} + + - name: Configure & Build with clang + env: + cc: clang + run: | + podman exec -i stable cmake -DCMAKE_BUILD_TYPE=Debug -DCMAKE_C_COMPILER=${cc} -DENABLE_WERROR=ON -B build-${cc} + podman exec -i stable cmake --build build-${cc} + + - name: Show logs + if: ${{ failure() }} + run: | + for log in build-*/CMakeFiles/{CMakeOutput.log,CMakeConfigureLog.yaml}; do \ + if [ -e ${log} ]; then \ + echo "---------------- ${log} ----------------"; \ + cat ${log}; \ + fi; \ + done diff --git a/CMakeLists.txt b/CMakeLists.txt index 19288a6..c7991ab 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -12,6 +12,13 @@ if(NOT CMAKE_BUILD_TYPE) set(CMAKE_BUILD_TYPE Release) endif() +# Add an option to enable treating warnings as errors +option(ENABLE_WERROR "Treat all compiler warnings as errors" OFF) + +if(ENABLE_WERROR) + add_compile_options(-Werror) +endif() + add_definitions(-D_GNU_SOURCE) set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Wno-parentheses") From 4597b054e2be71ca3a677037febac5ddf1ed4c01 Mon Sep 17 00:00:00 2001 From: Marc Kleine-Budde Date: Wed, 29 May 2024 11:26:28 +0200 Subject: [PATCH 3/5] github-actions: add cross-compiling --- .github/workflows/compile.yml | 42 +++++++++++++++++++++++++++ cmake/aarch64-linux-gnu-clang.cmake | 5 ++++ cmake/aarch64-linux-gnu-gcc.cmake | 5 ++++ cmake/arm-linux-gnueabihf-clang.cmake | 5 ++++ cmake/arm-linux-gnueabihf-gcc.cmake | 5 ++++ cmake/mips-linux-gnu-gcc.cmake | 5 ++++ 6 files changed, 67 insertions(+) create mode 100644 cmake/aarch64-linux-gnu-clang.cmake create mode 100644 cmake/aarch64-linux-gnu-gcc.cmake create mode 100644 cmake/arm-linux-gnueabihf-clang.cmake create mode 100644 cmake/arm-linux-gnueabihf-gcc.cmake create mode 100644 cmake/mips-linux-gnu-gcc.cmake diff --git a/.github/workflows/compile.yml b/.github/workflows/compile.yml index 8235c70..a08c9d8 100644 --- a/.github/workflows/compile.yml +++ b/.github/workflows/compile.yml @@ -32,6 +32,9 @@ jobs: clang \ cmake \ gcc \ + gcc-aarch64-linux-gnu \ + gcc-arm-linux-gnueabihf \ + gcc-mips-linux-gnu \ make - name: Configure & Build with gcc @@ -48,6 +51,45 @@ jobs: podman exec -i stable cmake -DCMAKE_BUILD_TYPE=Debug -DCMAKE_C_COMPILER=${cc} -DENABLE_WERROR=ON -B build-${cc} podman exec -i stable cmake --build build-${cc} + - name: Configure & Build with arm-linux-gnueabihf-gcc + env: + toolchain: arm-linux-gnueabihf-gcc + run: | + podman exec -i stable cmake -DCMAKE_BUILD_TYPE=Debug -DCMAKE_TOOLCHAIN_FILE=cmake/${toolchain}.cmake -DENABLE_WERROR=ON -B build-${toolchain} + podman exec -i stable cmake --build build-${toolchain} + + - name: Configure & Build with arm-linux-gnueabihf-clang + if: + ${{ matrix.release != 'ubuntu:20.04' && matrix.release != 'debian:oldstable-slim' }} + env: + toolchain: arm-linux-gnueabihf-clang + run: | + podman exec -i stable cmake -DCMAKE_BUILD_TYPE=Debug -DCMAKE_TOOLCHAIN_FILE=cmake/${toolchain}.cmake -DENABLE_WERROR=ON -B build-${toolchain} + podman exec -i stable cmake --build build-${toolchain} + + - name: Configure & Build with aarch64-linux-gnu-gcc + env: + toolchain: aarch64-linux-gnu-gcc + run: | + podman exec -i stable cmake -DCMAKE_BUILD_TYPE=Debug -DCMAKE_TOOLCHAIN_FILE=cmake/${toolchain}.cmake -DENABLE_WERROR=ON -B build-${toolchain} + podman exec -i stable cmake --build build-${toolchain} + + - name: Configure & Build with aarch64-linux-gnu-clang + if: + ${{ matrix.release != 'ubuntu:20.04' && matrix.release != 'debian:oldstable-slim' }} + env: + toolchain: aarch64-linux-gnu-clang + run: | + podman exec -i stable cmake -DCMAKE_BUILD_TYPE=Debug -DCMAKE_TOOLCHAIN_FILE=cmake/${toolchain}.cmake -DENABLE_WERROR=ON -B build-${toolchain} + podman exec -i stable cmake --build build-${toolchain} + + - name: Configure & Build with mips-linux-gnu-gcc + env: + toolchain: mips-linux-gnu-gcc + run: | + podman exec -i stable cmake -DCMAKE_BUILD_TYPE=Debug -DCMAKE_TOOLCHAIN_FILE=cmake/${toolchain}.cmake -DENABLE_WERROR=ON -B build-${toolchain} + podman exec -i stable cmake --build build-${toolchain} + - name: Show logs if: ${{ failure() }} run: | diff --git a/cmake/aarch64-linux-gnu-clang.cmake b/cmake/aarch64-linux-gnu-clang.cmake new file mode 100644 index 0000000..d67f80f --- /dev/null +++ b/cmake/aarch64-linux-gnu-clang.cmake @@ -0,0 +1,5 @@ +set(CMAKE_SYSTEM_NAME Linux) +set(CMAKE_SYSTEM_PROCESSOR aarch64) + +set(CMAKE_C_COMPILER clang) +set(CMAKE_C_COMPILER_TARGET aarch64-linux-gnu) diff --git a/cmake/aarch64-linux-gnu-gcc.cmake b/cmake/aarch64-linux-gnu-gcc.cmake new file mode 100644 index 0000000..56c99df --- /dev/null +++ b/cmake/aarch64-linux-gnu-gcc.cmake @@ -0,0 +1,5 @@ +set(CMAKE_SYSTEM_NAME Linux) +set(CMAKE_SYSTEM_PROCESSOR aarch64) + +set(CMAKE_C_COMPILER aarch64-linux-gnu-gcc) +set(CMAKE_C_COMPILER_TARGET aarch64-linux-gnu) diff --git a/cmake/arm-linux-gnueabihf-clang.cmake b/cmake/arm-linux-gnueabihf-clang.cmake new file mode 100644 index 0000000..c64eb96 --- /dev/null +++ b/cmake/arm-linux-gnueabihf-clang.cmake @@ -0,0 +1,5 @@ +set(CMAKE_SYSTEM_NAME Linux) +set(CMAKE_SYSTEM_PROCESSOR arm) + +set(CMAKE_C_COMPILER clang) +set(CMAKE_C_COMPILER_TARGET arm-linux-gnueabihf) diff --git a/cmake/arm-linux-gnueabihf-gcc.cmake b/cmake/arm-linux-gnueabihf-gcc.cmake new file mode 100644 index 0000000..ef52ce7 --- /dev/null +++ b/cmake/arm-linux-gnueabihf-gcc.cmake @@ -0,0 +1,5 @@ +set(CMAKE_SYSTEM_NAME Linux) +set(CMAKE_SYSTEM_PROCESSOR arm) + +set(CMAKE_C_COMPILER arm-linux-gnueabihf-gcc) +set(CMAKE_C_COMPILER_TARGET arm-linux-gnueabihf) diff --git a/cmake/mips-linux-gnu-gcc.cmake b/cmake/mips-linux-gnu-gcc.cmake new file mode 100644 index 0000000..44013bb --- /dev/null +++ b/cmake/mips-linux-gnu-gcc.cmake @@ -0,0 +1,5 @@ +set(CMAKE_SYSTEM_NAME Linux) +set(CMAKE_SYSTEM_PROCESSOR mips) + +set(CMAKE_C_COMPILER mips-linux-gnu-gcc) +set(CMAKE_C_COMPILER_TARGET mips-linux-gnu) From 8fdd8f9a5a2922b639ea6884123db4b2159c8027 Mon Sep 17 00:00:00 2001 From: Yegor Yefremov Date: Wed, 29 May 2024 20:24:12 +0200 Subject: [PATCH 4/5] github-actions: add workflow for NDK build Signed-off-by: Yegor Yefremov --- .github/workflows/ndk.yml | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 .github/workflows/ndk.yml diff --git a/.github/workflows/ndk.yml b/.github/workflows/ndk.yml new file mode 100644 index 0000000..3020af1 --- /dev/null +++ b/.github/workflows/ndk.yml @@ -0,0 +1,15 @@ +name: NDK + +on: [push, pull_request] + +jobs: + build: + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v4 + + - name: CMake and NDK + run: | + cmake -DCMAKE_BUILD_TYPE=Debug -DENABLE_WERROR=ON -DCMAKE_TOOLCHAIN_FILE=$ANDROID_NDK/build/cmake/android.toolchain.cmake -B build + cmake --build build From 97bfb2960abb6db20b204c7e0386a7d61791242f Mon Sep 17 00:00:00 2001 From: Marc Kleine-Budde Date: Thu, 23 May 2024 08:57:48 +0200 Subject: [PATCH 5/5] build-systems: remove autotools and Android.mk Remove autotools and Android.mk support. This clauses less friction when adding new tools. Link: https://github.com/linux-can/can-utils/issues/526 --- .gitignore | 30 +- Android.mk | 498 --------------------- GNUmakefile.am | 198 -------- autogen.sh | 22 - config/m4/.secret-world-domination-project | 0 configure.ac | 141 ------ 6 files changed, 2 insertions(+), 887 deletions(-) delete mode 100644 Android.mk delete mode 100644 GNUmakefile.am delete mode 100755 autogen.sh delete mode 100644 config/m4/.secret-world-domination-project delete mode 100644 configure.ac diff --git a/.gitignore b/.gitignore index 4a56b85..24a8311 100644 --- a/.gitignore +++ b/.gitignore @@ -1,30 +1,9 @@ *~ *.o -*.lo -*.la -.deps -.libs .ccls-cache compile_commands.json - -configure -libtool -GNUmakefile -GNUmakefile.in - -/aclocal.m4 -/autom4te.cache/ -/calc-bit-timing/.dirstamp -/config.log -/config.status -/config/autoconf/ -/config/m4/libtool.m4 -/config/m4/ltoptions.m4 -/config/m4/ltsugar.m4 -/config/m4/ltversion.m4 -/config/m4/lt~obsolete.m4 -/isobusfs/.dirstamp -/mcp251xfd/.dirstamp +tags +/build /asc2log /bcmserver @@ -59,8 +38,3 @@ GNUmakefile.in /slcand /slcanpty /testj1939 - -/can-utils-*.tar.bz2 -/can-utils-*.tar.gz - -tags diff --git a/Android.mk b/Android.mk deleted file mode 100644 index 35454b6..0000000 --- a/Android.mk +++ /dev/null @@ -1,498 +0,0 @@ -LOCAL_PATH := $(call my-dir) - -PRIVATE_LOCAL_CFLAGS := -O2 -g -W -Wall \ - -Wno-error=unused-parameter \ - -DSO_RXQ_OVFL=40 \ - -DPF_CAN=29 \ - -DAF_CAN=PF_CAN - -# -# canlib -# - -include $(CLEAR_VARS) - -LOCAL_SRC_FILES := lib.c canframelen.c -LOCAL_MODULE := libcan -LOCAL_C_INCLUDES := $(LOCAL_PATH)/include/ -LOCAL_CFLAGS := $(PRIVATE_LOCAL_CFLAGS) -LOCAL_VENDOR_MODULE := true - -include $(BUILD_STATIC_LIBRARY) - -# -# j1939lib -# - -include $(CLEAR_VARS) - -LOCAL_SRC_FILES := libj1939.c -LOCAL_MODULE := libj1939 -LOCAL_C_INCLUDES := $(LOCAL_PATH)/include/ -LOCAL_CFLAGS := $(PRIVATE_LOCAL_CFLAGS) -LOCAL_VENDOR_MODULE := true - -include $(BUILD_STATIC_LIBRARY) - -# -# j1939acd -# - -include $(CLEAR_VARS) - -LOCAL_SRC_FILES := j1939acd.c -LOCAL_MODULE := j1939acd -LOCAL_MODULE_TAGS := optional -LOCAL_STATIC_LIBRARIES := libj1939 -LOCAL_C_INCLUDES := $(LOCAL_PATH)/include/ -LOCAL_CFLAGS := $(PRIVATE_LOCAL_CFLAGS) -LOCAL_VENDOR_MODULE := true - -include $(BUILD_EXECUTABLE) - -# -# j1939cat -# - -include $(CLEAR_VARS) - -LOCAL_SRC_FILES := j1939cat.c -LOCAL_MODULE := j1939cat -LOCAL_MODULE_TAGS := optional -LOCAL_STATIC_LIBRARIES := libj1939 -LOCAL_C_INCLUDES := $(LOCAL_PATH)/include/ -LOCAL_CFLAGS := $(PRIVATE_LOCAL_CFLAGS) -LOCAL_VENDOR_MODULE := true - -include $(BUILD_EXECUTABLE) - -# -# j1939spy -# - -include $(CLEAR_VARS) - -LOCAL_SRC_FILES := j1939spy.c -LOCAL_MODULE := j1939spy -LOCAL_MODULE_TAGS := optional -LOCAL_STATIC_LIBRARIES := libj1939 -LOCAL_C_INCLUDES := $(LOCAL_PATH)/include/ -LOCAL_CFLAGS := $(PRIVATE_LOCAL_CFLAGS) -LOCAL_VENDOR_MODULE := true - -include $(BUILD_EXECUTABLE) - -# -# j1939sr -# - -include $(CLEAR_VARS) - -LOCAL_SRC_FILES := j1939sr.c -LOCAL_MODULE := j1939sr -LOCAL_MODULE_TAGS := optional -LOCAL_STATIC_LIBRARIES := libj1939 -LOCAL_C_INCLUDES := $(LOCAL_PATH)/include/ -LOCAL_CFLAGS := $(PRIVATE_LOCAL_CFLAGS) -LOCAL_VENDOR_MODULE := true - -include $(BUILD_EXECUTABLE) - -# -# testj1939 -# - -include $(CLEAR_VARS) - -LOCAL_SRC_FILES := testj1939.c -LOCAL_MODULE := testj1939 -LOCAL_MODULE_TAGS := optional -LOCAL_STATIC_LIBRARIES := libj1939 -LOCAL_C_INCLUDES := $(LOCAL_PATH)/include/ -LOCAL_CFLAGS := $(PRIVATE_LOCAL_CFLAGS) -LOCAL_VENDOR_MODULE := true - -include $(BUILD_EXECUTABLE) - -# -# candump -# - -include $(CLEAR_VARS) - -LOCAL_SRC_FILES := candump.c -LOCAL_MODULE := candump -LOCAL_MODULE_TAGS := optional -LOCAL_STATIC_LIBRARIES := libcan -LOCAL_C_INCLUDES := $(LOCAL_PATH)/include/ -LOCAL_CFLAGS := $(PRIVATE_LOCAL_CFLAGS) -LOCAL_VENDOR_MODULE := true - -include $(BUILD_EXECUTABLE) - -# -# cansend -# - -include $(CLEAR_VARS) - -LOCAL_SRC_FILES := cansend.c -LOCAL_MODULE := cansend -LOCAL_MODULE_TAGS := optional -LOCAL_STATIC_LIBRARIES := libcan -LOCAL_C_INCLUDES := $(LOCAL_PATH)/include/ -LOCAL_CFLAGS := $(PRIVATE_LOCAL_CFLAGS) -LOCAL_VENDOR_MODULE := true - -include $(BUILD_EXECUTABLE) - -# -# cansequence -# - -include $(CLEAR_VARS) - -LOCAL_SRC_FILES := cansequence.c -LOCAL_MODULE := cansequence -LOCAL_MODULE_TAGS := optional -LOCAL_C_INCLUDES := $(LOCAL_PATH)/include/ -LOCAL_CFLAGS := $(PRIVATE_LOCAL_CFLAGS) - -include $(BUILD_EXECUTABLE) - -# -# bcmserver -# - -include $(CLEAR_VARS) - -LOCAL_SRC_FILES := bcmserver.c -LOCAL_MODULE := bcmserver -LOCAL_MODULE_TAGS := optional -LOCAL_C_INCLUDES := $(LOCAL_PATH)/include/ -LOCAL_CFLAGS := $(PRIVATE_LOCAL_CFLAGS) -LOCAL_VENDOR_MODULE := true - -include $(BUILD_EXECUTABLE) - -# -# can-calc-bit-timing -# - -include $(CLEAR_VARS) - -LOCAL_SRC_FILES := calc-bit-timing/can-calc-bit-timing.c -LOCAL_MODULE := can-calc-bit-timing -LOCAL_MODULE_TAGS := optional -LOCAL_C_INCLUDES := $(LOCAL_PATH)/include/ -LOCAL_CFLAGS := $(PRIVATE_LOCAL_CFLAGS) -LOCAL_VENDOR_MODULE := true - -include $(BUILD_EXECUTABLE) - -# -# canbusload -# - -include $(CLEAR_VARS) - -LOCAL_SRC_FILES := canbusload.c -LOCAL_MODULE := canbusload -LOCAL_MODULE_TAGS := optional -LOCAL_STATIC_LIBRARIES := libcan -LOCAL_C_INCLUDES := $(LOCAL_PATH)/include/ -LOCAL_CFLAGS := $(PRIVATE_LOCAL_CFLAGS) -LOCAL_VENDOR_MODULE := true - -include $(BUILD_EXECUTABLE) - -# -# canfdtest -# - -include $(CLEAR_VARS) - -LOCAL_SRC_FILES := canfdtest.c -LOCAL_MODULE := canfdtest -LOCAL_MODULE_TAGS := optional -LOCAL_C_INCLUDES := $(LOCAL_PATH)/include/ -LOCAL_CFLAGS := $(PRIVATE_LOCAL_CFLAGS) -LOCAL_VENDOR_MODULE := true - -include $(BUILD_EXECUTABLE) - -# -# cangen -# - -include $(CLEAR_VARS) - -LOCAL_SRC_FILES := cangen.c -LOCAL_MODULE := cangen -LOCAL_MODULE_TAGS := optional -LOCAL_STATIC_LIBRARIES := libcan -LOCAL_C_INCLUDES := $(LOCAL_PATH)/include/ -LOCAL_CFLAGS := $(PRIVATE_LOCAL_CFLAGS) -LOCAL_VENDOR_MODULE := true - -include $(BUILD_EXECUTABLE) - -# -# cangw -# - -include $(CLEAR_VARS) - -LOCAL_SRC_FILES := cangw.c -LOCAL_MODULE := cangw -LOCAL_MODULE_TAGS := optional -LOCAL_C_INCLUDES := $(LOCAL_PATH)/include/ -LOCAL_CFLAGS := $(PRIVATE_LOCAL_CFLAGS) -LOCAL_VENDOR_MODULE := true - -include $(BUILD_EXECUTABLE) - -# -# canlogserver -# - -include $(CLEAR_VARS) - -LOCAL_SRC_FILES := canlogserver.c -LOCAL_MODULE := canlogserver -LOCAL_MODULE_TAGS := optional -LOCAL_STATIC_LIBRARIES := libcan -LOCAL_C_INCLUDES := $(LOCAL_PATH)/include/ -LOCAL_CFLAGS := $(PRIVATE_LOCAL_CFLAGS) -LOCAL_VENDOR_MODULE := true - -include $(BUILD_EXECUTABLE) - -# -# canplayer -# - -include $(CLEAR_VARS) - -LOCAL_SRC_FILES := canplayer.c -LOCAL_MODULE := canplayer -LOCAL_MODULE_TAGS := optional -LOCAL_STATIC_LIBRARIES := libcan -LOCAL_C_INCLUDES := $(LOCAL_PATH)/include/ -LOCAL_CFLAGS := $(PRIVATE_LOCAL_CFLAGS) -LOCAL_VENDOR_MODULE := true - -include $(BUILD_EXECUTABLE) - -# -# cansniffer -# - -include $(CLEAR_VARS) - -LOCAL_SRC_FILES := cansniffer.c -LOCAL_MODULE := cansniffer -LOCAL_MODULE_TAGS := optional -LOCAL_C_INCLUDES := $(LOCAL_PATH)/include/ -LOCAL_CFLAGS := $(PRIVATE_LOCAL_CFLAGS) -LOCAL_VENDOR_MODULE := true - -include $(BUILD_EXECUTABLE) - -# -# isotpdump -# - -include $(CLEAR_VARS) - -LOCAL_SRC_FILES := isotpdump.c -LOCAL_MODULE := isotpdump -LOCAL_MODULE_TAGS := optional -LOCAL_C_INCLUDES := $(LOCAL_PATH)/include/ -LOCAL_CFLAGS := $(PRIVATE_LOCAL_CFLAGS) -LOCAL_VENDOR_MODULE := true - -include $(BUILD_EXECUTABLE) - -# -# isotprecv -# - -include $(CLEAR_VARS) - -LOCAL_SRC_FILES := isotprecv.c -LOCAL_MODULE := isotprecv -LOCAL_MODULE_TAGS := optional -LOCAL_C_INCLUDES := $(LOCAL_PATH)/include/ -LOCAL_CFLAGS := $(PRIVATE_LOCAL_CFLAGS) -LOCAL_VENDOR_MODULE := true - -include $(BUILD_EXECUTABLE) - -# -# isotpsend -# - -include $(CLEAR_VARS) - -LOCAL_SRC_FILES := isotpsend.c -LOCAL_MODULE := isotpsend -LOCAL_MODULE_TAGS := optional -LOCAL_C_INCLUDES := $(LOCAL_PATH)/include/ -LOCAL_CFLAGS := $(PRIVATE_LOCAL_CFLAGS) -LOCAL_VENDOR_MODULE := true - -include $(BUILD_EXECUTABLE) - -# -# isotpserver -# - -include $(CLEAR_VARS) - -LOCAL_SRC_FILES := isotpserver.c -LOCAL_MODULE := isotpserver -LOCAL_MODULE_TAGS := optional -LOCAL_C_INCLUDES := $(LOCAL_PATH)/include/ -LOCAL_CFLAGS := $(PRIVATE_LOCAL_CFLAGS) -LOCAL_VENDOR_MODULE := true - -include $(BUILD_EXECUTABLE) - -# -# isotpsniffer -# - -include $(CLEAR_VARS) - -LOCAL_SRC_FILES := isotpsniffer.c -LOCAL_MODULE := isotpsniffer -LOCAL_MODULE_TAGS := optional -LOCAL_C_INCLUDES := $(LOCAL_PATH)/include/ -LOCAL_CFLAGS := $(PRIVATE_LOCAL_CFLAGS) -LOCAL_VENDOR_MODULE := true - -include $(BUILD_EXECUTABLE) - -# -# isotptun -# - -include $(CLEAR_VARS) - -LOCAL_SRC_FILES := isotptun.c -LOCAL_MODULE := isotptun -LOCAL_MODULE_TAGS := optional -LOCAL_C_INCLUDES := $(LOCAL_PATH)/include/ -LOCAL_CFLAGS := $(PRIVATE_LOCAL_CFLAGS) -LOCAL_VENDOR_MODULE := true - -include $(BUILD_EXECUTABLE) - -# -# isotpperf -# - -include $(CLEAR_VARS) - -LOCAL_SRC_FILES := isotpperf.c -LOCAL_MODULE := isotpperf -LOCAL_MODULE_TAGS := optional -LOCAL_C_INCLUDES := $(LOCAL_PATH)/include/ -LOCAL_CFLAGS := $(PRIVATE_LOCAL_CFLAGS) -LOCAL_VENDOR_MODULE := true - -include $(BUILD_EXECUTABLE) - -# -# log2asc -# - -include $(CLEAR_VARS) - -LOCAL_SRC_FILES := log2asc.c -LOCAL_MODULE := log2asc -LOCAL_MODULE_TAGS := optional -LOCAL_STATIC_LIBRARIES := libcan -LOCAL_C_INCLUDES := $(LOCAL_PATH)/include/ -LOCAL_CFLAGS := $(PRIVATE_LOCAL_CFLAGS) -LOCAL_VENDOR_MODULE := true - -include $(BUILD_EXECUTABLE) - -# -# asc2log -# - -include $(CLEAR_VARS) - -LOCAL_SRC_FILES := asc2log.c -LOCAL_MODULE := asc2log -LOCAL_MODULE_TAGS := optional -LOCAL_STATIC_LIBRARIES := libcan -LOCAL_C_INCLUDES := $(LOCAL_PATH)/include/ -LOCAL_CFLAGS := $(PRIVATE_LOCAL_CFLAGS) -LOCAL_VENDOR_MODULE := true - -include $(BUILD_EXECUTABLE) - -# -# log2long -# - -include $(CLEAR_VARS) - -LOCAL_SRC_FILES := log2long.c -LOCAL_MODULE := log2long -LOCAL_MODULE_TAGS := optional -LOCAL_STATIC_LIBRARIES := libcan -LOCAL_C_INCLUDES := $(LOCAL_PATH)/include/ -LOCAL_CFLAGS := $(PRIVATE_LOCAL_CFLAGS) -LOCAL_VENDOR_MODULE := true - -include $(BUILD_EXECUTABLE) - -# -# slcan_attach -# - -include $(CLEAR_VARS) - -LOCAL_SRC_FILES := slcan_attach.c -LOCAL_MODULE := slcan_attach -LOCAL_MODULE_TAGS := optional -LOCAL_C_INCLUDES := $(LOCAL_PATH)/include/ -LOCAL_CFLAGS := $(PRIVATE_LOCAL_CFLAGS) -LOCAL_VENDOR_MODULE := true - -include $(BUILD_EXECUTABLE) - -# -# slcand -# - -include $(CLEAR_VARS) - -LOCAL_SRC_FILES := slcand.c -LOCAL_MODULE := slcand -LOCAL_MODULE_TAGS := optional -LOCAL_C_INCLUDES := $(LOCAL_PATH)/include/ -LOCAL_CFLAGS := $(PRIVATE_LOCAL_CFLAGS) -LOCAL_VENDOR_MODULE := true - -include $(BUILD_EXECUTABLE) - -# -# slcanpty -# - -include $(CLEAR_VARS) - -LOCAL_SRC_FILES := lib.c slcanpty.c -LOCAL_MODULE := slcanpty -LOCAL_MODULE_TAGS := optional -LOCAL_C_INCLUDES := $(LOCAL_PATH)/include/ -LOCAL_CFLAGS := $(PRIVATE_LOCAL_CFLAGS) -LOCAL_VENDOR_MODULE := true - -include $(BUILD_EXECUTABLE) diff --git a/GNUmakefile.am b/GNUmakefile.am deleted file mode 100644 index 1f06437..0000000 --- a/GNUmakefile.am +++ /dev/null @@ -1,198 +0,0 @@ -ACLOCAL_AMFLAGS = -I config/m4 - -AM_CPPFLAGS = \ - -I$(top_srcdir)/include \ - -I$(top_builddir)/include \ - $(linux_CFLAGS) - -EXTRA_DIST = - -# link every app against libcan, it's static so it wouldn't hurt -LDADD = \ - libcan.la - -noinst_HEADERS = \ - canframelen.h \ - isobusfs/isobusfs_cli.h \ - isobusfs/isobusfs_cmn.h \ - isobusfs/isobusfs_cmn_cm.h \ - isobusfs/isobusfs_cmn_dh.h \ - isobusfs/isobusfs_cmn_fa.h \ - isobusfs/isobusfs_cmn_fh.h \ - isobusfs/isobusfs_cmn_va.h \ - isobusfs/isobusfs_srv.h \ - lib.h \ - libj1939.h \ - terminal.h \ - include/linux/can.h \ - include/linux/can/bcm.h \ - include/linux/can/error.h \ - include/linux/can/gw.h \ - include/linux/can/isotp.h \ - include/linux/can/j1939.h \ - include/linux/can/netlink.h \ - include/linux/can/raw.h \ - include/linux/can/vxcan.h \ - include/linux/errqueue.h \ - include/linux/kernel.h \ - include/linux/net_tstamp.h \ - include/linux/netlink.h - -noinst_LTLIBRARIES = \ - libcan.la \ - libj1939.la - -libcan_la_SOURCES = \ - lib.c \ - canframelen.c - -libj1939_la_SOURCES = \ - libj1939.c - -can_calc_bit_timing_SOURCES = \ - calc-bit-timing/can-calc-bit-timing.c \ - calc-bit-timing/compat.h - -EXTRA_DIST += \ - calc-bit-timing/can-calc-bit-timing-v2_6_31.c \ - calc-bit-timing/can-calc-bit-timing-v3_18.c \ - calc-bit-timing/can-calc-bit-timing-v4_8.c \ - calc-bit-timing/can-calc-bit-timing-v5_16.c \ - calc-bit-timing/can-calc-bit-timing-v5_19.c \ - calc-bit-timing/can-calc-bit-timing-v6_3.c - -mcp251xfd_dump_SOURCES = \ - mcp251xfd/mcp251xfd-dev-coredump.c \ - mcp251xfd/mcp251xfd-dump-userspace.h \ - mcp251xfd/mcp251xfd-dump.c \ - mcp251xfd/mcp251xfd-dump.h \ - mcp251xfd/mcp251xfd-main.c \ - mcp251xfd/mcp251xfd-regmap.c \ - mcp251xfd/mcp251xfd.h - -EXTRA_DIST += \ - mcp251xfd/99-devcoredump.rules \ - mcp251xfd/data/devcoredump-canfd-v5.15.dump \ - mcp251xfd/data/devcoredump-canfd.dump \ - mcp251xfd/data/devcoredump-classic-can-v5.15.dump \ - mcp251xfd/data/devcoredump-classic-can.dump \ - mcp251xfd/data/registers-canfd-v5.15.dump \ - mcp251xfd/data/registers-canfd.dump \ - mcp251xfd/data/registers-classic-can-v5.15.dump \ - mcp251xfd/data/registers-classic-can.dump \ - mcp251xfd/devcoredump \ - mcp251xfd/mcp251xfd-gen-testdata.sh - -lib_LTLIBRARIES = \ - libisobusfs.la - -libisobusfs_la_SOURCES = \ - isobusfs/isobusfs_cmn.c \ - isobusfs/isobusfs_cmn_dh.c - -bin_PROGRAMS = \ - asc2log \ - can-calc-bit-timing \ - canbusload \ - candump \ - canfdtest \ - cangen \ - cangw \ - canplayer \ - cansend \ - cansequence \ - cansniffer \ - isobusfs-cli \ - isobusfs-srv \ - isotpdump \ - isotpperf \ - isotprecv \ - isotpsend \ - isotpsniffer \ - isotptun \ - j1939acd \ - j1939cat \ - j1939spy \ - j1939sr \ - log2asc \ - log2long \ - mcp251xfd-dump \ - slcan_attach \ - slcand \ - slcanpty \ - testj1939 - -if HAVE_FORK -bin_PROGRAMS += \ - bcmserver \ - canlogserver \ - isotpserver -endif - -isobusfs_cli_SOURCES = \ - isobusfs/isobusfs_cli.c \ - isobusfs/isobusfs_cli_cm.c \ - isobusfs/isobusfs_cli_dh.c \ - isobusfs/isobusfs_cli_fa.c \ - isobusfs/isobusfs_cli_selftests.c \ - isobusfs/isobusfs_cli_int.c - -isobusfs_cli_LDADD = \ - libisobusfs.la \ - libcan.la - -isobusfs_srv_SOURCES = \ - isobusfs/isobusfs_srv.c \ - isobusfs/isobusfs_srv_cm.c \ - isobusfs/isobusfs_srv_cm_fss.c \ - isobusfs/isobusfs_srv_dh.c \ - isobusfs/isobusfs_srv_fa.c \ - isobusfs/isobusfs_srv_fh.c \ - isobusfs/isobusfs_srv_vh.c - -isobusfs_srv_LDADD = \ - libisobusfs.la \ - libcan.la - -EXTRA_DIST += \ - isobusfs/isobusfs_create_test_dirs.sh \ - isobusfs/isobusfs_create_test_file.sh - -j1939acd_LDADD = libj1939.la -j1939cat_LDADD = libj1939.la -j1939spy_LDADD = libj1939.la -j1939sr_LDADD = libj1939.la -testj1939_LDADD = libj1939.la - -EXTRA_DIST += \ - .travis.yml \ - Android.mk \ - README.md \ - autogen.sh \ - can-j1939-kickstart.md \ - can-j1939.md \ - can-tc-init-etf.sh - -MAINTAINERCLEANFILES = \ - configure \ - GNUmakefile.in \ - aclocal.m4 \ - config/autoconf/compile \ - config/autoconf/config.guess \ - config/autoconf/config.sub \ - config/autoconf/depcomp \ - config/autoconf/install-sh \ - config/autoconf/ltmain.sh \ - config/autoconf/mdate-sh \ - config/autoconf/missing \ - config/autoconf/texinfo.tex \ - config/m4/libtool.m4 \ - config/m4/ltoptions.m4 \ - config/m4/ltsugar.m4 \ - config/m4/ltversion.m4 \ - config/m4/lt~obsolete.m4 \ - $(DIST_ARCHIVES) - -maintainer-clean-local: - -chmod -R a+rw $(distdir) - -rm -fr $(distdir) diff --git a/autogen.sh b/autogen.sh deleted file mode 100755 index 6d1c20a..0000000 --- a/autogen.sh +++ /dev/null @@ -1,22 +0,0 @@ -#!/bin/bash - -# -# usage: -# -# banner -# -banner() { - echo - TG=`echo $1 | sed -e "s,/.*/,,g"` - LINE=`echo $TG |sed -e "s/./-/g"` - echo $LINE - echo $TG - echo $LINE - echo -} - -banner "autoreconf" - -autoreconf --force --install -Wall || exit $? - -banner "Finished" diff --git a/config/m4/.secret-world-domination-project b/config/m4/.secret-world-domination-project deleted file mode 100644 index e69de29..0000000 diff --git a/configure.ac b/configure.ac deleted file mode 100644 index 9bf62a5..0000000 --- a/configure.ac +++ /dev/null @@ -1,141 +0,0 @@ -# -*- Autoconf -*- -# Process this file with autoconf to produce a configure script. -AC_PREREQ([2.59]) - -AC_INIT([can-utils],[trunk],[linux-can@vger.kernel.org]) -AC_CONFIG_SRCDIR([lib.c]) -AC_CONFIG_MACRO_DIR([config/m4]) -AC_CONFIG_AUX_DIR([config/autoconf]) -AC_CANONICAL_BUILD -AC_CANONICAL_HOST - -# If possible, enable extensions to Posix -AC_USE_SYSTEM_EXTENSIONS - -#AM_MAINTAINER_MODE - -CFLAGS="${CFLAGS} -Wall" - -# -# Checks for programs. -# -AC_PROG_CC -LT_INIT(win32-dll) - -AM_INIT_AUTOMAKE([foreign no-exeext dist-bzip2 subdir-objects]) -m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])]) - -# -# Checks for header files. -# -AC_CHECK_HEADERS([ \ - fcntl.h \ - limits.h \ - locale.h \ - stdint.h \ - stdlib.h \ - string.h \ - syslog.h \ - termios.h \ - unistd.h \ - \ - netinet/in.h \ - \ - sys/ioctl.h \ - sys/socket.h \ - sys/time.h \ -]) - - -# -# Checks for typedefs, structures, and compiler characteristics. -# -AC_C_INLINE -AC_SYS_LARGEFILE -AC_TYPE_OFF_T -AC_TYPE_PID_T -AC_TYPE_UINT64_T - - -# -# Checks for library functions. -# -AC_FUNC_FORK -AC_FUNC_MKTIME -AC_CHECK_FUNCS([ \ - alarm \ - gettimeofday \ - localtime_r \ - memset \ - select \ - setlocale \ - socket \ - strchr \ - strerror \ - strstr \ - strtoul \ -]) - -AM_CONDITIONAL(HAVE_FORK, test "$ac_cv_func_fork_works" = "yes") - -# glibc versions before 2.17 needs to link with -lrt for clock_nanosleep -AC_SEARCH_LIBS([clock_nanosleep], [rt]) - -AC_CHECK_DECL(SO_RXQ_OVFL,, - [AC_DEFINE([SO_RXQ_OVFL], [40], [SO_RXQ_OVFL])], - [[#include ]] -) -AC_CHECK_DECL(PF_CAN,, - [AC_DEFINE([PF_CAN], [29], [PF_CAN])], - [[#include ]] -) -AC_CHECK_DECL(AF_CAN,, - [AC_DEFINE([AF_CAN], [PF_CAN], [AF_CAN])], - [[#include ]] -) -AC_CHECK_DECL(N_SLCAN,, - [AC_DEFINE([N_SLCAN], [17], [N_SLCAN])], - [[#include ]] -) -AC_CHECK_DECL(SCM_TIMESTAMPING_OPT_STATS,, - [AC_DEFINE([SCM_TIMESTAMPING_OPT_STATS], [54], [SCM_TIMESTAMPING_OPT_STATS])], - [[#include ]] -) -AC_CHECK_DECL(CLOCK_TAI,, - [AC_DEFINE([CLOCK_TAI], [11], [CLOCK_TAI])], - [[#include ]] -) -AC_CHECK_DECL(SO_TXTIME,, - [AC_DEFINE([SO_TXTIME], [61], [SO_TXTIME])], - [[#include ]] -) -AC_CHECK_DECL(SCM_TXTIME,, - [AC_DEFINE([SCM_TXTIME], [SO_TXTIME], [SCM_TXTIME])], - [[#include ]] -) - - -# -# Debugging -# -AC_MSG_CHECKING([whether to enable debugging]) -AC_ARG_ENABLE(debug, - AS_HELP_STRING([--enable-debug], [enable debugging [[default=no]]]), - [case "$enableval" in - (y | yes) CONFIG_DEBUG=yes ;; - (*) CONFIG_DEBUG=no ;; - esac], - [CONFIG_DEBUG=no]) -AC_MSG_RESULT([${CONFIG_DEBUG}]) -if test "${CONFIG_DEBUG}" = "yes"; then - CFLAGS="${CFLAGS} -Wsign-compare -Wfloat-equal -Wformat-security -g -O1" - AC_DEFINE(DEBUG, 1, [debugging]) -else - CFLAGS="${CFLAGS} -O2" -fi - - -AC_CONFIG_FILES([ - GNUmakefile - ]) -AC_OUTPUT