Skip to content

Commit

Permalink
Simplified delivery scripts (more portable)
Browse files Browse the repository at this point in the history
  • Loading branch information
binghe committed Mar 13, 2024
1 parent 0d0ccf1 commit 2a465ae
Show file tree
Hide file tree
Showing 4 changed files with 5 additions and 64 deletions.
4 changes: 3 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,9 @@ downloaded from
plugin headers from latest SDK headers should also work for old versions of FileMaker Pro
and FileMaker Pro Advanced.)

Then call `(prepare:prepare)` after loading `:prepare-fm-plugin-tools`.
Then call `(prep:prepare)` after `(ql:quickload :prepare-fm-plugin-tools)`.

NOTE: this project should be put into Quicklisp's "local-projects" folder.

## Unified plug-in bundle format

Expand Down
27 changes: 1 addition & 26 deletions build-plugin64.cmd
Original file line number Diff line number Diff line change
Expand Up @@ -6,40 +6,15 @@ REM + Change the following `set' statements to adapt them to your +
REM + local settings: +
REM +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

REM The directory where the DLL will be built
set build_dir="C:\Temp"

REM The FileMaker extension directory
set target_dir="C:\Program Files\FileMaker\FileMaker Pro 18 Advanced\Extensions"

REM The delivery script
set script="C:\Lisp\fm-plugin-tools\deliver.lisp"

REM The LispWorks executable
set lispworks="C:\Program Files\LispWorks\lispworks-7-0-0-x64-windows.exe"

REM The name of the plug-in (the .fmx file)
set name=FMPLisp

REM +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
REM + Don't change anything below this point. +
REM +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

cd %build_dir%
%lispworks% -build deliver.lisp FMPLisp
if errorlevel 1 (
echo Couldn't change to directory %build_dir%.
pause
) else (
%lispworks% -build %script% %name%
if errorlevel 1 (
echo Couldn't build DLL.
pause
) else (
copy /Y %name%.fmx64 %target_dir%
if errorlevel 1 (
echo Couldn't copy DLL into %target_dir%.
pause
)
del %name%.fmx64
)
)
11 changes: 0 additions & 11 deletions deliver.lisp
Original file line number Diff line number Diff line change
Expand Up @@ -31,24 +31,13 @@

(lw:load-all-patches)

(defvar *system-homedir*
#+win32 #p"C:/" #-win32 (user-homedir-pathname))

;;; The following lines added by ql:add-to-init-file:
#+(not quicklisp)
(let ((quicklisp-init (merge-pathnames "quicklisp/setup.lisp"
(user-homedir-pathname))))
(when (probe-file quicklisp-init)
(load quicklisp-init)))

;;; cl-fad
(ql:quickload :cl-fad)

;;; Local ASDF repositories, it's fine some directorie do not exist.
(dolist (i '("Lisp/fm-plugin-tools/"))
(pushnew (merge-pathnames i *system-homedir*)
asdf:*central-registry* :test #'equal))

(defvar *asdf-system* :fm-plugin-example
"The ASDF system which contains the code for the plug-in. It should
depend on FM-PLUGIN-TOOLS.")
Expand Down
27 changes: 1 addition & 26 deletions regex-plugin/build-plugin64.cmd
Original file line number Diff line number Diff line change
Expand Up @@ -6,40 +6,15 @@ REM + Change the following `set' statements to adapt them to your +
REM + local settings: +
REM +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

REM The directory where the DLL will be built
set build_dir="C:\Temp"

REM The FileMaker extension directory
set target_dir="C:\Program Files\FileMaker\FileMaker Pro 18 Advanced\Extensions"

REM The delivery script
set script="C:\Lisp\fm-plugin-tools\regex-plugin\deliver.lisp"

REM The LispWorks executable
set lispworks="C:\Program Files\LispWorks\lispworks-7-0-0-x64-windows.exe"

REM The name of the plug-in (the .fmx file)
set name=RegexPlugIn

REM +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
REM + Don't change anything below this point. +
REM +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

cd %build_dir%
%lispworks% -build deliver.lisp RegexPlugIn
if errorlevel 1 (
echo Couldn't change to directory %build_dir%.
pause
) else (
%lispworks% -build %script% %name%
if errorlevel 1 (
echo Couldn't build DLL.
pause
) else (
copy /Y %name%.fmx64 %target_dir%
if errorlevel 1 (
echo Couldn't copy DLL into %target_dir%.
pause
)
del %name%.fmx64
)
)

0 comments on commit 2a465ae

Please sign in to comment.