![Paul Sokolovsky](/assets/img/avatar_default.png)
Foreign Function Interface module allows to load native dynamic libraries, call functions and access variables in them. This makes possible to write interface modules in pure Python. This module provides thin wrapper around libffi. ctypes compatibility might be possible to implement on top of this module (though ctypes allow to call functions without prototypes, which is not supported by libffi (i.e. implementation would be inefficient))).
37 lines
618 B
Makefile
37 lines
618 B
Makefile
include ../py/mkenv.mk
|
|
|
|
# define main target
|
|
PROG = micropython
|
|
|
|
# qstr definitions (must come before including py.mk)
|
|
QSTR_DEFS = qstrdefsport.h
|
|
|
|
# include py core make definitions
|
|
include ../py/py.mk
|
|
|
|
# compiler settings
|
|
CFLAGS = -I. -I$(PY_SRC) -Wall -Werror -ansi -std=gnu99 -DUNIX
|
|
LDFLAGS = -lm -ldl -lffi
|
|
|
|
# Debugging/Optimization
|
|
ifdef DEBUG
|
|
CFLAGS += -O0 -g
|
|
else
|
|
CFLAGS += -Os #-DNDEBUG
|
|
endif
|
|
|
|
# source files
|
|
SRC_C = \
|
|
main.c \
|
|
file.c \
|
|
socket.c \
|
|
ffi.c \
|
|
|
|
OBJ = $(PY_O) $(addprefix $(BUILD)/, $(SRC_C:.c=.o))
|
|
LIB = -lreadline
|
|
# the following is needed for BSD
|
|
#LIB += -ltermcap
|
|
|
|
include ../py/mkrules.mk
|
|
|