mirror of
https://gitlab.com/eql/EQL5.git
synced 2025-12-06 02:30:31 -08:00
30 lines
759 B
Common Lisp
30 lines
759 B
Common Lisp
;;;
|
|
;;; OSX note: unloading may not work!
|
|
;;;
|
|
;;; Simple demo:
|
|
;;;
|
|
;;; 0) do: eql5 reload.lisp -qtpl
|
|
;;;
|
|
;;; 1) make some changes in "cpp/lib.h", "cpp/lib.cpp"
|
|
;;; 2) do: (recompile-c++)
|
|
;;; 3) goto 1)
|
|
;;;
|
|
;;; Call plugin functions like this:
|
|
;;;
|
|
;;; (qfun+ *lib* "myFunction") ; a)
|
|
;;; (! "myFunction" (:qt *lib*)) ; b)
|
|
;;;
|
|
|
|
(in-package :eql-user)
|
|
|
|
(defvar *lib* (qload-c++ (in-src "Qt_EQL/eql_cpp")))
|
|
|
|
(defun recompile-c++ ()
|
|
(qload-c++ (in-src "Qt_EQL/eql_cpp")
|
|
:unload)
|
|
(ext:run-program #+msvc "make.bat" #-msvc "make"
|
|
#+msvc nil #-msvc '("-C" "cpp/")
|
|
:output t)
|
|
(setf *lib* (qload-c++ (in-src "Qt_EQL/eql_cpp")))
|
|
(assert (qt-object-p *lib*))
|
|
(qapropos nil *lib*))
|