1 # SPDX-License-Identifier: GPL-2.0-only 2 # Makefile for libcpupower's Python bindings 3 # 4 # This Makefile expects you have already run the makefile for cpupower to build 5 # the .o files in the lib directory for the bindings to be created. 6 7 CC := gcc 8 HAVE_SWIG := $(shell if which swig >/dev/null 2>&1; then echo 1; else echo 0; fi) 9 HAVE_PYCONFIG := $(shell if which python-config >/dev/null 2>&1; then echo 1; else echo 0; fi) 10 11 LIB_DIR := ../../lib 12 PY_INCLUDE = $(firstword $(shell python-config --includes)) 13 OBJECTS_LIB = $(wildcard $(LIB_DIR)/*.o) 14 15 all: _raw_pylibcpupower.so 16 17 _raw_pylibcpupower.so: raw_pylibcpupower_wrap.o 18 $(CC) -shared $(OBJECTS_LIB) raw_pylibcpupower_wrap.o -o _raw_pylibcpupower.so 19 20 raw_pylibcpupower_wrap.o: raw_pylibcpupower_wrap.c 21 $(CC) -fPIC -c raw_pylibcpupower_wrap.c $(PY_INCLUDE) 22 23 raw_pylibcpupower_wrap.c: raw_pylibcpupower.swg 24 ifeq ($(HAVE_SWIG),0) 25 $(error "swig was not found. Make sure you have it installed and in the PATH to generate the bindings.") 26 else 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.") 28 endif 29 swig -python raw_pylibcpupower.swg 30 31 # Will only clean the bindings folder; will not clean the actual cpupower folder 32 clean: 33 rm -f raw_pylibcpupower.py raw_pylibcpupower_wrap.c raw_pylibcpupower_wrap.o _raw_pylibcpupower.so
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.