Blame Demos/embed/Makefile
|
Packit Service |
99d393 |
# Makefile for creating our standalone Cython program
|
|
Packit Service |
99d393 |
PYTHON := python
|
|
Packit Service |
99d393 |
PYVERSION := $(shell $(PYTHON) -c "import sys; print(sys.version[:3])")
|
|
Packit Service |
99d393 |
PYPREFIX := $(shell $(PYTHON) -c "import sys; print(sys.prefix)")
|
|
Packit Service |
99d393 |
|
|
Packit Service |
99d393 |
INCDIR := $(shell $(PYTHON) -c "from distutils import sysconfig; print(sysconfig.get_python_inc())")
|
|
Packit Service |
99d393 |
PLATINCDIR := $(shell $(PYTHON) -c "from distutils import sysconfig; print(sysconfig.get_python_inc(plat_specific=True))")
|
|
Packit Service |
99d393 |
LIBDIR1 := $(shell $(PYTHON) -c "from distutils import sysconfig; print(sysconfig.get_config_var('LIBDIR'))")
|
|
Packit Service |
99d393 |
LIBDIR2 := $(shell $(PYTHON) -c "from distutils import sysconfig; print(sysconfig.get_config_var('LIBPL'))")
|
|
Packit Service |
99d393 |
PYLIB := $(shell $(PYTHON) -c "from distutils import sysconfig; print(sysconfig.get_config_var('LIBRARY')[3:-2])")
|
|
Packit Service |
99d393 |
|
|
Packit Service |
99d393 |
CC := $(shell $(PYTHON) -c "import distutils.sysconfig; print(distutils.sysconfig.get_config_var('CC'))")
|
|
Packit Service |
99d393 |
LINKCC := $(shell $(PYTHON) -c "import distutils.sysconfig; print(distutils.sysconfig.get_config_var('LINKCC'))")
|
|
Packit Service |
99d393 |
LINKFORSHARED := $(shell $(PYTHON) -c "import distutils.sysconfig; print(distutils.sysconfig.get_config_var('LINKFORSHARED'))")
|
|
Packit Service |
99d393 |
LIBS := $(shell $(PYTHON) -c "import distutils.sysconfig; print(distutils.sysconfig.get_config_var('LIBS'))")
|
|
Packit Service |
99d393 |
SYSLIBS := $(shell $(PYTHON) -c "import distutils.sysconfig; print(distutils.sysconfig.get_config_var('SYSLIBS'))")
|
|
Packit Service |
99d393 |
|
|
Packit Service |
99d393 |
embedded: embedded.o
|
|
Packit Service |
99d393 |
$(LINKCC) -o $@ $^ -L$(LIBDIR1) -L$(LIBDIR2) -l$(PYLIB) $(LIBS) $(SYSLIBS) $(LINKFORSHARED)
|
|
Packit Service |
99d393 |
|
|
Packit Service |
99d393 |
embedded.o: embedded.c
|
|
Packit Service |
99d393 |
$(CC) -c $^ -I$(INCDIR) -I$(PLATINCDIR)
|
|
Packit Service |
99d393 |
|
|
Packit Service |
99d393 |
CYTHON := ../../cython.py
|
|
Packit Service |
99d393 |
embedded.c: embedded.pyx
|
|
Packit Service |
99d393 |
@$(PYTHON) $(CYTHON) --embed embedded.pyx
|
|
Packit Service |
99d393 |
|
|
Packit Service |
99d393 |
all: embedded
|
|
Packit Service |
99d393 |
|
|
Packit Service |
99d393 |
clean:
|
|
Packit Service |
99d393 |
@echo Cleaning Demos/embed
|
|
Packit Service |
99d393 |
@rm -f *~ *.o *.so core core.* *.c embedded test.output
|
|
Packit Service |
99d393 |
|
|
Packit Service |
99d393 |
test: clean all
|
|
Packit Service |
99d393 |
PYTHONHOME=$(PYPREFIX) LD_LIBRARY_PATH=$(LIBDIR1):$$LD_LIBRARY_PATH ./embedded > test.output
|
|
Packit Service |
99d393 |
$(PYTHON) assert_equal.py embedded.output test.output
|