Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: OpenGene/fastp
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v0.23.2
Choose a base ref
...
head repository: OpenGene/fastp
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: master
Choose a head ref
Loading
71 changes: 71 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
name: fastp ci
on:
pull_request:
branches:
- master
jobs:
build:
strategy:
fail-fast: false
matrix:
os:
- ubuntu-24.04
- macos-12
runs-on: ${{ matrix.os }}
steps:
- name: checkout scm
uses: actions/checkout@v3

- name: Get number of CPU cores
uses: SimenB/github-actions-cpu-cores@v1
id: cpu-cores

- name: install build dependencies (Ubuntu)
run: sudo apt update && sudo apt install -y build-essential nasm
if: runner.os == 'Linux'

- name: install build dependencies (MacOS)
run: brew install automake autoconf coreutils nasm
if: runner.os == 'macOS'

- name: get deflate
uses: actions/checkout@v3
with:
repository: ebiggers/libdeflate
path: src/libs/deflate
ref: v1.22

- name: build deflate
run: |
cd src/libs/deflate
cmake -B build
cmake --build build -j ${{ steps.cpu-cores.outputs.count }}
sudo cmake --install build
cd -
- name: get isa-l
uses: actions/checkout@v3
with:
repository: intel/isa-l
path: src/libs/isa-l
ref: v2.31.0

- name: build isa-l
run: |
cd src/libs/isa-l
./autogen.sh
./configure --prefix=/usr/local
make -j ${{ steps.cpu-cores.outputs.count }}
sudo make install
cd -
- name: make fatsp (MacOS)
run: bash -c 'make -j $(nproc)'
if: runner.os == 'macOS'

- name: make fastp static (Ubuntu)
run: bash -c 'make -j $(nproc) static'
if: runner.os == 'Linux'

- name: test
run: chmod a+x ./fastp && ./fastp --version
8 changes: 0 additions & 8 deletions .travis.yml

This file was deleted.

23 changes: 7 additions & 16 deletions Makefile
Original file line number Diff line number Diff line change
@@ -15,7 +15,7 @@ TARGET := fastp
BIN_TARGET := ${TARGET}

CXX ?= g++
CXXFLAGS := -std=c++11 -pthread -g -O3 -I${DIR_INC} $(foreach includedir,$(INCLUDE_DIRS),-I$(includedir)) ${CXXFLAGS}
CXXFLAGS := -std=c++11 -pthread -g -O3 -MD -MP -I${DIR_INC} $(foreach includedir,$(INCLUDE_DIRS),-I$(includedir)) ${CXXFLAGS}
LIBS := -lisal -ldeflate -lpthread
STATIC_FLAGS := -static -Wl,--no-as-needed -pthread
LD_FLAGS := $(foreach librarydir,$(LIBRARY_DIRS),-L$(librarydir)) $(LIBS) $(LD_FLAGS)
@@ -28,27 +28,18 @@ ${BIN_TARGET}:${OBJ}
static:${OBJ}
$(CXX) $(OBJ) -o ${BIN_TARGET} $(STATIC_LD_FLAGS)

${DIR_OBJ}/%.o:${DIR_SRC}/%.cpp make_obj_dir
${DIR_OBJ}/%.o:${DIR_SRC}/%.cpp
@mkdir -p $(@D)
$(CXX) -c $< -o $@ $(CXXFLAGS)

.PHONY:clean
.PHONY:static
clean:
@if test -d $(DIR_OBJ) ; \
then \
find $(DIR_OBJ) -name *.o -delete; \
fi
@if test -e $(TARGET) ; \
then \
rm $(TARGET) ; \
fi

make_obj_dir:
@if test ! -d $(DIR_OBJ) ; \
then \
mkdir $(DIR_OBJ) ; \
fi
@rm -rf $(DIR_OBJ)
@rm -f $(TARGET)

install:
install $(TARGET) $(BINDIR)/$(TARGET)
@echo "Installed."

-include $(OBJ:.o=.d)
Loading