aboutsummaryrefslogtreecommitdiffstats
path: root/Makefile
Commit message (Collapse)AuthorAgeFilesLines
...
* Makefile: fix cross-arch CI buildsDmitry Vyukov2024-04-261-41/+41
| | | | | Using env to pass env don't seem to work as demonstrated by #4717. It looks like it's broken since 62114d6064c8.
* all: remove akaros supportDmitry Vyukov2024-04-151-6/+0
| | | | | | | Akaros support is unused, it was shutdown on syzbot for a while, the akaros development seems to be frozen for years as well. We have a bunch of hacks for Akaros since it supported only super old gcc and haven't supported Go. Remove it.
* makefile, dashboard/app/util_test.go: test split by dev_appserver.pyTaras Madan2024-02-281-2/+2
|
* makefile: race test splitTaras Madan2024-02-281-2/+9
| | | | If the test require dev_appserver.py, run it separately.
* makefile: silence syz-env hint on CITaras Madan2024-02-281-3/+1
|
* run.sh, Makefile: ask golangci-lint to preformat outputTaras Madan2024-02-261-1/+5
|
* all: restructure testsAleksandr Nogikh2023-07-121-11/+4
| | | | | Let presubmit_dashboard run dashboard tests and presubmit_build run all others.
* all: remove mentions of big-envAleksandr Nogikh2023-07-121-3/+3
| | | | Use just env instead of that.
* sys/targets: add FreeBSD/arm64 target supportAndrew Turner2023-03-011-0/+1
|
* all: add freebsd/riscv64 supportP1umer2023-01-031-0/+1
|
* make: print warning when make is executed without syz-envSpace Meyer2022-10-111-0/+10
|
* vm: add the proxyapp support (#3269)Taras Madan2022-09-261-0/+1
| | | | | | | * vm: add pool.Close() support * vm: add proxyapp client implementation * vm/proxyapp: autogenerate mocks * vm/proxyapp: add proxyapp tests * pkg/mgrconfig: add proxyapp type tests
* Makefile: split presubmit_arch_other targetDmitry Vyukov2022-08-101-5/+15
| | | | | presubmit_arch_other is now the slowest presubmit step taking 7-8 mins. Split it per OS.
* Makefile: run vet only once during presubmitDmitry Vyukov2022-06-071-2/+2
| | | | | | | | | | | | | | | | Go test runs vet tool on source files. Vet tool takes insane amount of time on our auto-generated files. We run go test in 3 presubmit stages, disable vet with -vet=off in all but one presubmit stage. It should give the same coverage, but save some latency and maybe reduce OOMs in race stage. syzkaller$ TIME="%e %M" taskset -c 0 time go test -run=nothing ./prog ok github.com/google/syzkaller/prog 0.162s [no tests to run] 88.59 6766736 syzkaller$ TIME="%e %M" taskset -c 0 time go test -run=nothing -vet=off ./prog ok github.com/google/syzkaller/prog 0.159s [no tests to run] 40.22 5256900
* pkg/html/pages: switch to go:embedDmitry Vyukov2022-05-231-1/+1
| | | | | | | | | | We use clumsy generate scripts that embed some static files. Switch to the new go:embed thing (added in Go 1.16): https://pkg.go.dev/embed It's much nicer, does not require separate generate step and does not lead to additional diffs in code reviews. go:embed can only embed "files read from the package directory or subdirectories", so we need to move these assets to the package dir.
* pkg/html: move some functions to sub-packageDmitry Vyukov2022-05-231-1/+1
| | | | | Move functions that need embed assets to a separate package. In preparation for the next change.
* make: add syz-build targetPatrick Meyer2022-04-211-1/+3
|
* Makefile: don't test dashboard/app build with Go 1.12Dmitry Vyukov2022-01-191-6/+0
| | | | | We've switched to Go 1.16 toolchain for dashboard/app, so don't need to test build with Go 1.11/12 anymore.
* .github/workflows: split work across more jobsDmitry Vyukov2021-12-211-13/+28
| | | | | | | | CI become quite slow, especially the 'arch' job. Split it into 3 separate jobs. Also split main build/lint/test from all of the aux checks. Update #2886
* Makefile: allow GOHOSTFLAGS and GOTARGETFLAGS to be overriddenOvidiu Panait2021-11-291-2/+2
| | | | | | | | Allow the user to override host/target build flags (such as debug info generation flags). This is useful for example when syzkaller is compiled by the Yocto build system, as it always generates packages with debug info. Signed-off-by: Ovidiu Panait <ovpanait@gmail.com>
* Makefile: run more test with clangDmitry Vyukov2021-10-051-2/+7
| | | | | Smoke CI run uses Linux/gcc, so use Linux/clang for the big-env run to get max test coverage.
* Makefile: test appengine app build locallyDmitry Vyukov2021-09-301-0/+6
|
* Makefile: add make commands for syz-runner and syz-verifierMara Mihali2021-06-301-0/+6
|
* Makefile: do not remove empty files from sys/*/genAlexey Kardashevskiy2021-06-241-1/+2
| | | | | | | | | | | | | | | | | | The existing "make clean" removes all directories with generated files, even "empty.go" which are tracked by git. This relaxes the clean rule to keep empty.go to stop these warnings: || package github.com/google/syzkaller/tools/syz-stress || imports github.com/google/syzkaller/pkg/csource || imports github.com/google/syzkaller/pkg/mgrconfig || imports github.com/google/syzkaller/sys || imports github.com/google/syzkaller/sys/windows/gen: \ build constraints exclude all Go files in \ /home/aik/p/go/src/github.com/google/syzkaller/sys/windows/gen Fixes: 95777977ade5 ("sys: commit empty source files") Signed-off-by: Alexey Kardashevskiy <aik@linux.ibm.com>
* pkg/mgrconfig: don't build syz-executor for fuchsiaMarco Vanotti2021-04-091-0/+4
| | | | Fuchsia provides its own copy of syz-executor, built in tree.
* tools: add script to check shebang lines (#2234)Mark Johnston2020-11-021-3/+7
| | | | | | | | | | | * pkg/vcs: remove obsolete test script Per Dmitry, this should have been removed as part of 8f58e4b ("pkg/bisect: switch to kconfig.Minimize"). * all: convert shebang lines to use /usr/bin/env * Makefile: fix non-portable use of find(1)
* prog: drop semicolons in 'go build' output to not confuse vimAlexey Kardashevskiy2020-10-261-1/+1
| | | | | | | | | | | When running "make" under vim, it treats numbers after semicolons as line numbers and the existing invocation of "git lot" uses the date format with semicolons. This changes the git rev not to use semicolons so it changes from "Wed, 13 May 2020 21:11:52 +0200" to "20200513-211152". Signed-off-by: Alexey Kardashevskiy <aik@linux.ibm.com>
* Makefile: add configs targetDmitry Vyukov2020-10-211-1/+6
| | | | | | config target regenerates all kernel configs. Update #2171
* pkg/vcs: use committer dateTetsuo Handa2020-10-101-1/+1
| | | | | | | | The Freshness columns in Instances: table on the dashboard page look outdated, for these fields are showing when that patch was authored. Where possible, using when that patch was committed into the tree in question would be more meaningful. Update #1537
* Makefile: add new make target for syz-cover toolJouni Hogander2020-09-261-0/+2
|
* Makefile: add target for syz-bisect toolJouni Hogander2020-09-211-0/+3
|
* Makefile: try to install python-is-python3 package as neededTetsuo Handa2020-09-211-0/+1
| | | | | | | | Since some scripts are executed using "python", create a symlink when "python3" exists and "python" does not exist, by installing python-is-python3 package. /bin/sh: 1: python: not found make[2]: *** [Makefile:364: check_links] Error 127
* Makefile: try to install g++ package explicitlyTetsuo Handa2020-09-181-0/+1
| | | | | | | | | Since executor/gen.go invokes "gcc kvm_gen.cc kvm.S -o kvm_gen", g++ is needed. go generate ./pkg/csource ./executor ./pkg/ifuzz ./pkg/build ./pkg/html gcc: fatal error: cannot execute ‘cc1plus’: execvp: No such file or directory compilation terminated. executor/gen.go:6: running "bash": exit status 1
* tools/check-whitespace.sh: check for trailing whitespacesDmitry Vyukov2020-09-141-2/+5
| | | | | | File types that we don't format automatically can end up with such basic untidiness as trailing whitespaces. Check for these. Remove all existing precedents.
* tools/docker: mirror images on githubDmitry Vyukov2020-09-121-1/+1
| | | | | Some users don't have access to the gcr.io registry. Mirror images on github as well.
* Makefile: fix clang-tidy commentDmitry Vyukov2020-08-241-3/+2
| | | | We now run more than one check.
* tools/docker: add old-envDmitry Vyukov2020-08-221-2/+11
| | | | | | | old-env is based on Ubuntu 16.04 and allows to test executor build on older distributions. Fixes #2055
* Makefile: try to install clang-tidy package explicitlyTetsuo Handa2020-08-131-0/+1
| | | | | | | | | | | | | | | | | Commit 43f1389ddccb58a4 ("Makefile: enable clang-tidy in presubmit tests") added clang-tidy to only tools/docker/env/Dockerfile file. We should try to explicitly install clang-tidy in Makefile for those who don't use docker. /bin/sh: 1: clang-tidy: not found (...snipped...) Makefile:250: recipe for target 'tidy' failed make[2]: *** [tidy] Error 127 make[2]: *** Waiting for unfinished jobs.... (...snipped...) Makefile:269: recipe for target 'presubmit_smoke' failed make[1]: *** [presubmit_smoke] Error 2 Makefile:264: recipe for target 'presubmit' failed make: *** [presubmit] Error 2
* Makefile: enable clang-tidy in presubmit testsDmitry Vyukov2020-08-041-2/+4
| | | | | Fix all errors it points to. The one in netlink_send_ext is concerning.
* .github/workflows: check commit description formatDmitry Vyukov2020-07-311-2/+5
| | | | | Check PR commit subjects for the standard format we use "pkg/name: description of the change". Check PR commit bodies for at most 120 characters.
* Makefile: set GO111MODULE=off for go get in install_prerequisitesTobias Klauser2020-07-201-1/+1
| | | | | | | | | | | | | Otherwise the versions in go.mod are updated on running `make install_prerequisites` leading to inconsistent vendoring errors: go: inconsistent vendoring in /go/src/github.com/google/syzkaller: golang.org/x/net@v0.0.0-20200625001655-4c5254603344: is explicitly required in go.mod, but not marked as explicit in vendor/modules.txt golang.org/x/tools@v0.0.0-20200717024301-6ddee64345a6: is explicitly required in go.mod, but not marked as explicit in vendor/modules.txt golang.org/x/net@v0.0.0-20200520182314-0ba52f642ac2: is marked as explicit in vendor/modules.txt, but not explicitly required in go.mod golang.org/x/tools@v0.0.0-20200626171337-aa94e735be7f: is marked as explicit in vendor/modules.txt, but not explicitly required in go.mod Signed-off-by: Tobias Klauser <tklauser@distanz.ch>
* Makefile: test executor build with clangDmitry Vyukov2020-07-161-1/+2
| | | | | To get more compiler coverage and to not let it rot. clang get detect more bugs statically.
* Makefile: simplify arch build testsDmitry Vyukov2020-07-161-91/+21
| | | | There is not much value in the current 2 levels of indirections.
* Makefile: avoid non-portable realpathGreg Steuck2020-07-071-1/+1
| | | | | pwd -P works great and is portable. This fixes OpenBSD ci.
* tools/syz-linter: add custom linterDmitry Vyukov2020-07-041-3/+5
| | | | | | | | | | | | For now we have 2 simple checks: 1. for multiline comments: /* */ -> // 2. for string len comparison with 0: len(str) != 0 -> str != "" Update #1876
* go.mod: add go-fuzz-buildDmitry Vyukov2020-07-041-2/+1
| | | | | | | | Otherwise go-fuzz-build now fails with: + go-fuzz-build -libfuzzer -func FuzzDeserialize -o fuzzer.a ./prog/test -: cannot find package "." in: /syzkaller/gopath/src/github.com/google/syzkaller/vendor/github.com/dvyukov/go-fuzz/go-fuzz-dep
* go.mod: vendor golangci-lintDmitry Vyukov2020-07-041-7/+3
|
* Makefile: add support for linux/riscv64Tobias Klauser2020-06-261-1/+6
| | | | | | | Install g++-riscv64-linux-gnu in install_prerequisites target and hook up arch_linux_riscv64_target. Signed-off-by: Tobias Klauser <tklauser@distanz.ch>
* sys/linux: first 64bit big-endian architecture s390xAlexander Egorenkov2020-06-251-1/+6
| | | | | | | | | | | | | | | * mmap syscall is special on Linux s390x because the parameters for this syscall are passed as a struct on user stack instead of registers. * Introduce the SyscallTrampolines table into targets.Target to address the above problem. * There is a bug in Linux kernel s390x which causes QEMU TCG to hang when KASAN is enabled. The bug has been fixed in the forthcoming Linux 5.8 version. Until then do not enable KASAN when using QEMU TCG, QEMU KVM shall have no problems with KASAN. Signed-off-by: Alexander Egorenkov <Alexander.Egorenkov@ibm.com>
* tools/syz-reporter: Tool to share/visualize crashesJukka Kaartinen2020-06-221-0/+3
| | | | | | | | | | Goes through crash folder that is stated in the workdir. Collects the crashes, counts and tags. usage: ./bin/syz-reporter -config manager.cfg Signed-off-by: Jukka Kaartinen <jukka.kaartinen@unikie.com>