-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathWinMakefile
More file actions
39 lines (31 loc) · 1.14 KB
/
WinMakefile
File metadata and controls
39 lines (31 loc) · 1.14 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
# SPDX-License-Identifier: MIT WITH bison-exception WITH swig-exception
# Copyright © 2020 Matthew Stern, Benjamin Michalowicz
CC=x86_64-w64-mingw32-gcc
BIN=topylogic
SRC=$(wildcard src/*.c)
INCLUDES= $(wildcard include/*.h)
OBJ=$(SRC:.c=.o)
LDFLAGS= -lpython39
CFLAGS= -Wall -Werror -g -fPIC -O2 -D_WIN32_WINNT=0x0600 -I/usr/x86_64-w64-mingw32/include/python39 -L/usr/x86_64-w64-mingw32/lib/libpython39.dll.a -lpython39 #-DDEBUG
PYFLAGS= -I/usr/x86_64-w64-mingw32/include/python39 -L/usr/x86_64-w64-mingw32/lib/libpython39.dll.a -lpython39
TOPYLOGIC_I=pysrc/topylogic.i
TOPYLOGIC_WRAP=pysrc/topylogic_wrap.c
TOPYLOGIC_PYD=pysrc/_topylogic.pyd
TOPYLOGIC_PY=pysrc/topylogic.py
TOPYLOGIC_SO=pysrc/topylogic_wrap.o
$(BIN): $(OBJ) $(INCLUDES)
swig -python -keyword $(TOPYLOGIC_I)
$(CC) $(PYFLAGS) -c -fPIC $(TOPYLOGIC_WRAP) -o $(TOPYLOGIC_SO)
$(CC) -shared $(TOPYLOGIC_SO) $(OBJ) -o $(TOPYLOGIC_PYD) $(PYFLAGS)
all:$(BIN)
.PHONY : clean python
clean:
rm -rf pysrc/__pycache__
rm -rf pysrc/build
-rm -f $(OBJ)
-rm -f $(TOPYLOGIC_PY)
-rm -f $(TOPYLOGIC_SO)
-rm -f $(TOPYLOGIC_PYD)
-rm -f $(TOPYLOGIC_WRAP)
-rm -f pysrc/state_*
-rm -f pysrc/*.pyc