1# SPDX-License-Identifier: GPL-2.0 2 3include $(src)/scripts/utils.mk 4 5ifdef BUILD_PYTHON_WORKS 6PYTHON_SO_INSTALL := ctracecmd.install 7PYTHON_PY_PROGS := event-viewer.install 8PYTHON_PY_LIBS := tracecmd.install 9endif 10 11ctracecmd.so: ctracecmd.i $(LIBTRACECMD_STATIC) 12 swig -Wall -python -noproxy \ 13 -I$(src)/include/trace-cmd -I$(src)/lib/trace-cmd/include/private \ 14 $(LIBTRACEEVENT_CFLAGS) ctracecmd.i 15 $(CC) -fpic -c $(CPPFLAGS) $(CFLAGS) $(PYTHON_INCLUDES) ctracecmd_wrap.c 16 $(CC) --shared $(LIBTRACECMD_STATIC) $(LDFLAGS) $(LIBZSTD_LDLAGS) $(ZLIB_LDLAGS) \ 17 ctracecmd_wrap.o -o ctracecmd.so $(TRACE_LIBS) 18 19$(PYTHON_SO_INSTALL): %.install : %.so force 20 $(Q)$(call do_install_data,$<,$(python_dir_SQ)) 21 22$(PYTHON_PY_PROGS): %.install : %.py force 23 $(Q)$(call do_install,$<,$(python_dir_SQ)) 24 25$(PYTHON_PY_LIBS): %.install : %.py force 26 $(Q)$(call do_install_data,$<,$(python_dir_SQ)) 27 28install_python: $(PYTHON_SO_INSTALL) $(PYTHON_PY_PROGS) $(PYTHON_PY_LIBS) 29 30 31clean: 32 $(RM) *.a *.so *.o .*.d ctracecmd_wrap.* 33 34force: 35.PHONY: clean force 36