move windowsinstaller to /package update artwork adapt to conda builds make msvc redist directory optional automate version information definition use relative directories for file locations definitions improve/update readme partially update Delete.bat for qt6 libpack add .gitignore update signing.bat and add hashing command WindowsInstaller: use --safe-mode in freecadcmd commands [skip ci] WindowsInstaller: make windows 8 the minimum version [skip ci] WindowsInstaller: allow configuring some values via command line windows installer update for qt6 build
66 lines
1.7 KiB
NSIS
66 lines
1.7 KiB
NSIS
/*
|
|
|
|
install.nsh
|
|
|
|
Installation of program files, dictionaries and external components
|
|
|
|
*/
|
|
|
|
#--------------------------------
|
|
# Program files
|
|
!include LogicLib.nsh
|
|
|
|
Section -ProgramFiles SecProgramFiles
|
|
|
|
# if the $INSTDIR does not contain "FreeCAD" we must add a subfolder to avoid that FreeCAD will e.g.
|
|
# be installed directly to C:\programs - the uninstaller will then delete the whole
|
|
# C:\programs directory
|
|
StrCpy $String "$INSTDIR"
|
|
StrCpy $Search "${APP_NAME}"
|
|
Call StrPoint # function from Utils.nsh
|
|
${if} $Pointer == "-1"
|
|
StrCpy $INSTDIR "$INSTDIR\${APP_DIR}"
|
|
${endif}
|
|
|
|
# turn on logging
|
|
# Note that this can first be done here since the log file is written to $INSTDIR
|
|
# to $INSTDIR must have a valid path before logging can be turned on
|
|
LogSet on
|
|
|
|
# Install and register the core FreeCAD files
|
|
|
|
# Initializes the plug-ins dir ($PLUGINSDIR) if not already initialized.
|
|
# $PLUGINSDIR is automatically deleted when the installer exits.
|
|
InitPluginsDir
|
|
|
|
# Binaries
|
|
SetOutPath "$INSTDIR\bin"
|
|
# recursively copy all files under bin
|
|
File /r "${FILES_FREECAD}\bin\*.*"
|
|
|
|
# MSVC redistributable DLLs
|
|
!ifdef FILES_DEPS
|
|
!echo "Including MSVC Redist files from ${FILES_DEPS}"
|
|
SetOutPath "$INSTDIR\bin"
|
|
File "${FILES_DEPS}\*.*"
|
|
!endif
|
|
|
|
# Others
|
|
SetOutPath "$INSTDIR\data"
|
|
File /r "${FILES_FREECAD}\data\*.*"
|
|
SetOutPath "$INSTDIR\doc"
|
|
File /r "${FILES_FREECAD}\doc\*.*"
|
|
SetOutPath "$INSTDIR\Ext"
|
|
File /r "${FILES_FREECAD}\Ext\*.*"
|
|
SetOutPath "$INSTDIR\lib"
|
|
File /r "${FILES_FREECAD}\lib\*.*"
|
|
SetOutPath "$INSTDIR\Mod"
|
|
File /r "${FILES_FREECAD}\Mod\*.*"
|
|
SetOutPath "$INSTDIR"
|
|
File /r "${FILES_THUMBS}"
|
|
|
|
# Create uninstaller
|
|
WriteUninstaller "$INSTDIR\${SETUP_UNINSTALLER}"
|
|
|
|
SectionEnd
|