brintos

brintos / linux-shallow public Read only

0
0
Text · 1.3 KiB · e1ebb1d Raw
34 lines · plain
1# SPDX-License-Identifier: GPL-2.0-only2# Makefile for libcpupower's Python bindings3#4# This Makefile expects you have already run the makefile for cpupower to build5# the .o files in the lib directory for the bindings to be created.6 7CC := gcc8HAVE_SWIG := $(shell if which swig >/dev/null 2>&1; then echo 1; else echo 0; fi)9HAVE_PYCONFIG := $(shell if which python-config >/dev/null 2>&1; then echo 1; else echo 0; fi)10 11LIB_DIR := ../../lib12PY_INCLUDE = $(firstword $(shell python-config --includes))13OBJECTS_LIB = $(wildcard $(LIB_DIR)/*.o)14 15all: _raw_pylibcpupower.so16 17_raw_pylibcpupower.so: raw_pylibcpupower_wrap.o18	$(CC) -shared $(OBJECTS_LIB) raw_pylibcpupower_wrap.o -o _raw_pylibcpupower.so19 20raw_pylibcpupower_wrap.o: raw_pylibcpupower_wrap.c21	$(CC) -fPIC -c raw_pylibcpupower_wrap.c $(PY_INCLUDE)22 23raw_pylibcpupower_wrap.c: raw_pylibcpupower.swg24ifeq ($(HAVE_SWIG),0)25	$(error "swig was not found. Make sure you have it installed and in the PATH to generate the bindings.")26else ifeq ($(HAVE_PYCONFIG),0)27	$(error "python-config was not found. Make sure you have it installed and in the PATH to generate the bindings.")28endif29	swig -python raw_pylibcpupower.swg30 31# Will only clean the bindings folder; will not clean the actual cpupower folder32clean:33	rm -f raw_pylibcpupower.py raw_pylibcpupower_wrap.c raw_pylibcpupower_wrap.o _raw_pylibcpupower.so34