Compare commits
2 Commits
8e7e5f96c3
...
c645645155
Author | SHA1 | Date | |
---|---|---|---|
c645645155 | |||
307fdaefae |
22
Makefile
22
Makefile
@ -1,18 +1,20 @@
|
|||||||
all: build run
|
all: build run
|
||||||
|
|
||||||
|
# Variables for compiler and flags
|
||||||
|
CC = gcc
|
||||||
|
CFLAGS = -Ofast -Werror -Wall -lreadline -lncurses -lcurl -lssl -lcrypto -ljson-c -lm
|
||||||
|
|
||||||
build_rpylib:
|
# Targets
|
||||||
gcc -shared -o rpylib.so -fPIC rpylib.c -lpython3.12 `python3-config --includes` -I/usr/include/CL -ljson-c -lcurl
|
build:
|
||||||
|
$(CC) main.c $(CFLAGS) -o r
|
||||||
|
|
||||||
build:
|
|
||||||
# -lpython3.14 -I/usr/include/python3.14
|
|
||||||
gcc main.c -Ofast -o r -Werror -Wall -lreadline -lncurses -lcurl -lssl -lcrypto -ljson-c -lm
|
|
||||||
publish r
|
publish r
|
||||||
|
|
||||||
build_free:
|
build_free:
|
||||||
gcc main.c -lcurl -DFREE_VERSION -lssl -lcrypto -ljson-c -Ofast -o rf -Werror -Wall -lreadline -lncurses -lm
|
$(CC) main.c -DFREE_VERSION $(CFLAGS) -o rf
|
||||||
publish rf
|
publish rf
|
||||||
|
|
||||||
run:
|
build_rpylib:
|
||||||
|
$(CC) -shared -o rpylib.so -fPIC rpylib.c -lpython3.12 `python3-config --includes` -I/usr/include/CL -ljson-c -lcurl
|
||||||
|
|
||||||
|
run:
|
||||||
./r
|
./r
|
||||||
|
4
main.c
4
main.c
@ -198,7 +198,9 @@ void repl() {
|
|||||||
if (!line || !*line)
|
if (!line || !*line)
|
||||||
continue;
|
continue;
|
||||||
// previous_line = line;
|
// previous_line = line;
|
||||||
|
if(!strncmp(line,"dump",4)){
|
||||||
|
printf("%s\n",message_json());
|
||||||
|
}
|
||||||
if (!strncmp(line, "exit", 4)) {
|
if (!strncmp(line, "exit", 4)) {
|
||||||
exit(0);
|
exit(0);
|
||||||
}
|
}
|
||||||
|
9
rpylib.c
9
rpylib.c
@ -37,10 +37,6 @@ SOFTWARE.
|
|||||||
#include <Python.h>
|
#include <Python.h>
|
||||||
#include "openai.h"
|
#include "openai.h"
|
||||||
|
|
||||||
static PyObject* mymodule_hello(PyObject *self, PyObject *args) {
|
|
||||||
return PyUnicode_FromString("Hello, World from C!");
|
|
||||||
}
|
|
||||||
|
|
||||||
static PyObject* rpylib_reset(PyObject *self, PyObject *args) {
|
static PyObject* rpylib_reset(PyObject *self, PyObject *args) {
|
||||||
return PyUnicode_FromString("True");
|
return PyUnicode_FromString("True");
|
||||||
}
|
}
|
||||||
@ -57,7 +53,6 @@ static PyObject* rpylib_chat(PyObject *self, PyObject *args) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
static PyMethodDef MyModuleMethods[] = {
|
static PyMethodDef MyModuleMethods[] = {
|
||||||
{"hello", mymodule_hello, METH_NOARGS, "Returns a Hello World string"},
|
|
||||||
{"chat", rpylib_chat, METH_VARARGS, "Chat with OpenAI."},
|
{"chat", rpylib_chat, METH_VARARGS, "Chat with OpenAI."},
|
||||||
{"reset", rpylib_reset, METH_NOARGS, "Reset message history."},
|
{"reset", rpylib_reset, METH_NOARGS, "Reset message history."},
|
||||||
{NULL, NULL, 0, NULL}
|
{NULL, NULL, 0, NULL}
|
||||||
@ -66,11 +61,11 @@ static PyMethodDef MyModuleMethods[] = {
|
|||||||
static struct PyModuleDef rpylib = {
|
static struct PyModuleDef rpylib = {
|
||||||
PyModuleDef_HEAD_INIT,
|
PyModuleDef_HEAD_INIT,
|
||||||
"rpylib",
|
"rpylib",
|
||||||
"A simple C extension module for Python",
|
"R - the power of R in Python, made by retoor.",
|
||||||
-1,
|
-1,
|
||||||
MyModuleMethods
|
MyModuleMethods
|
||||||
};
|
};
|
||||||
|
|
||||||
PyMODINIT_FUNC PyInit_rpylib(void) {
|
PyMODINIT_FUNC PyInit_rpylib(void) {
|
||||||
return PyModule_Create(&rpylib);
|
return PyModule_Create(&rpylib);
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user