xref: /trunk/Makefile (revision 6bd5e5a3f7ad501649673b191b6a442289dbb905)
1# Licensed to the Apache Software Foundation (ASF) under one
2# or more contributor license agreements.  See the NOTICE file
3# distributed with this work for additional information
4# regarding copyright ownership.  The ASF licenses this file
5# to you under the Apache License, Version 2.0 (the
6# "License"); you may not use this file except in compliance
7# with the License.  You may obtain a copy of the License at
8#
9#   http://www.apache.org/licenses/LICENSE-2.0
10#
11# Unless required by applicable law or agreed to in writing,
12# software distributed under the License is distributed on an
13# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14# KIND, either express or implied.  See the License for the
15# specific language governing permissions and limitations
16# under the License.
17
18PYTHON := $(shell command -v python || command -v python3 || echo python)
19PIP := $(PYTHON) -m pip
20
21.PHONY: check checkinstall checkupdate install
22
23check: checkinstall
24    @echo "Running pre-commit checks..."
25    pre-commit run --all-files
26
27checkinstall: install
28    @echo "Installing pre-commit hooks..."
29    pre-commit install
30
31checkupdate:
32    @echo "Updating pre-commit hooks..."
33    pre-commit autoupdate
34
35install:
36    @echo "Installing dependencies..."
37    @if [ -f requirements-dev.txt ]; then \
38        $(PIP) install -r requirements-dev.txt; \
39    else \
40        echo "Error: requirements-dev.txt not found."; \
41        exit 1; \
42    fi
43