|
@@ -30,6 +30,7 @@ SetCompressor ${COMPRESSOR}
|
|
|
!include "MUI2.nsh"
|
|
!include "MUI2.nsh"
|
|
|
!include "Sections.nsh"
|
|
!include "Sections.nsh"
|
|
|
!include "WinMessages.nsh"
|
|
!include "WinMessages.nsh"
|
|
|
|
|
+!include "WinVer.nsh"
|
|
|
!include "WordFunc.nsh"
|
|
!include "WordFunc.nsh"
|
|
|
!include "x64.nsh"
|
|
!include "x64.nsh"
|
|
|
|
|
|
|
@@ -89,7 +90,6 @@ LangString DESC_SecMaxPlugins ${LANG_ENGLISH} "Plug-ins for Autodesk 3ds Max (${
|
|
|
LangString DESC_SecMayaPlugins ${LANG_ENGLISH} "Plug-ins and scripts for Autodesk Maya (${REGVIEW}-bit) that can be used to export models to Panda3D."
|
|
LangString DESC_SecMayaPlugins ${LANG_ENGLISH} "Plug-ins and scripts for Autodesk Maya (${REGVIEW}-bit) that can be used to export models to Panda3D."
|
|
|
|
|
|
|
|
var READABLE
|
|
var READABLE
|
|
|
-var MANPAGE
|
|
|
|
|
|
|
|
|
|
; See http://nsis.sourceforge.net/Check_if_a_file_exists_at_compile_time for documentation
|
|
; See http://nsis.sourceforge.net/Check_if_a_file_exists_at_compile_time for documentation
|
|
|
!macro !defineifexist _VAR_NAME _FILE_NAME
|
|
!macro !defineifexist _VAR_NAME _FILE_NAME
|
|
@@ -373,12 +373,14 @@ SectionGroup "Python modules" SecGroupPython
|
|
|
!insertmacro PyBindingSection 3.7-32 .cp37-win32.pyd
|
|
!insertmacro PyBindingSection 3.7-32 .cp37-win32.pyd
|
|
|
!insertmacro PyBindingSection 3.8-32 .cp38-win32.pyd
|
|
!insertmacro PyBindingSection 3.8-32 .cp38-win32.pyd
|
|
|
!insertmacro PyBindingSection 3.9-32 .cp39-win32.pyd
|
|
!insertmacro PyBindingSection 3.9-32 .cp39-win32.pyd
|
|
|
|
|
+ !insertmacro PyBindingSection 3.10-32 .cp310-win32.pyd
|
|
|
!else
|
|
!else
|
|
|
!insertmacro PyBindingSection 3.5 .cp35-win_amd64.pyd
|
|
!insertmacro PyBindingSection 3.5 .cp35-win_amd64.pyd
|
|
|
!insertmacro PyBindingSection 3.6 .cp36-win_amd64.pyd
|
|
!insertmacro PyBindingSection 3.6 .cp36-win_amd64.pyd
|
|
|
!insertmacro PyBindingSection 3.7 .cp37-win_amd64.pyd
|
|
!insertmacro PyBindingSection 3.7 .cp37-win_amd64.pyd
|
|
|
!insertmacro PyBindingSection 3.8 .cp38-win_amd64.pyd
|
|
!insertmacro PyBindingSection 3.8 .cp38-win_amd64.pyd
|
|
|
!insertmacro PyBindingSection 3.9 .cp39-win_amd64.pyd
|
|
!insertmacro PyBindingSection 3.9 .cp39-win_amd64.pyd
|
|
|
|
|
+ !insertmacro PyBindingSection 3.10 .cp310-win_amd64.pyd
|
|
|
!endif
|
|
!endif
|
|
|
SectionGroupEnd
|
|
SectionGroupEnd
|
|
|
|
|
|
|
@@ -483,14 +485,32 @@ Function .onInit
|
|
|
!insertmacro MaybeEnablePyBindingSection 3.6-32
|
|
!insertmacro MaybeEnablePyBindingSection 3.6-32
|
|
|
!insertmacro MaybeEnablePyBindingSection 3.7-32
|
|
!insertmacro MaybeEnablePyBindingSection 3.7-32
|
|
|
!insertmacro MaybeEnablePyBindingSection 3.8-32
|
|
!insertmacro MaybeEnablePyBindingSection 3.8-32
|
|
|
|
|
+ ${If} ${AtLeastWin8}
|
|
|
!insertmacro MaybeEnablePyBindingSection 3.9-32
|
|
!insertmacro MaybeEnablePyBindingSection 3.9-32
|
|
|
|
|
+ !insertmacro MaybeEnablePyBindingSection 3.10-32
|
|
|
|
|
+ ${EndIf}
|
|
|
!else
|
|
!else
|
|
|
!insertmacro MaybeEnablePyBindingSection 3.5
|
|
!insertmacro MaybeEnablePyBindingSection 3.5
|
|
|
!insertmacro MaybeEnablePyBindingSection 3.6
|
|
!insertmacro MaybeEnablePyBindingSection 3.6
|
|
|
!insertmacro MaybeEnablePyBindingSection 3.7
|
|
!insertmacro MaybeEnablePyBindingSection 3.7
|
|
|
!insertmacro MaybeEnablePyBindingSection 3.8
|
|
!insertmacro MaybeEnablePyBindingSection 3.8
|
|
|
|
|
+ ${If} ${AtLeastWin8}
|
|
|
!insertmacro MaybeEnablePyBindingSection 3.9
|
|
!insertmacro MaybeEnablePyBindingSection 3.9
|
|
|
|
|
+ !insertmacro MaybeEnablePyBindingSection 3.10
|
|
|
|
|
+ ${EndIf}
|
|
|
|
|
+ !endif
|
|
|
|
|
+
|
|
|
|
|
+ ; These versions of Python require Windows 8.1 or higher.
|
|
|
|
|
+ ${Unless} ${AtLeastWin8}
|
|
|
|
|
+ !ifdef SecPyBindings3.9
|
|
|
|
|
+ SectionSetFlags ${SecPyBindings3.9} ${SF_RO}
|
|
|
|
|
+ SectionSetInstTypes ${SecPyBindings3.9} 0
|
|
|
|
|
+ !endif
|
|
|
|
|
+ !ifdef SecPyBindings3.10
|
|
|
|
|
+ SectionSetFlags ${SecPyBindings3.10} ${SF_RO}
|
|
|
|
|
+ SectionSetInstTypes ${SecPyBindings3.10} 0
|
|
|
!endif
|
|
!endif
|
|
|
|
|
+ ${EndUnless}
|
|
|
FunctionEnd
|
|
FunctionEnd
|
|
|
|
|
|
|
|
Function .onSelChange
|
|
Function .onSelChange
|
|
@@ -599,13 +619,14 @@ Section "Sample programs" SecSamples
|
|
|
|
|
|
|
|
SetOutPath $INSTDIR
|
|
SetOutPath $INSTDIR
|
|
|
WriteINIStr $INSTDIR\Website.url "InternetShortcut" "URL" "https://www.panda3d.org/"
|
|
WriteINIStr $INSTDIR\Website.url "InternetShortcut" "URL" "https://www.panda3d.org/"
|
|
|
- WriteINIStr $INSTDIR\Manual.url "InternetShortcut" "URL" "https://www.panda3d.org/manual/index.php"
|
|
|
|
|
- WriteINIStr $INSTDIR\Samples.url "InternetShortcut" "URL" "https://www.panda3d.org/manual/index.php/Sample_Programs_in_the_Distribution"
|
|
|
|
|
|
|
+ WriteINIStr $INSTDIR\Manual.url "InternetShortcut" "URL" "https://docs.panda3d.org/${MAJOR_VER}"
|
|
|
|
|
+ WriteINIStr $INSTDIR\Samples.url "InternetShortcut" "URL" "https://docs.panda3d.org/${MAJOR_VER}/python/more-resources/samples/index"
|
|
|
SetOutPath $INSTDIR
|
|
SetOutPath $INSTDIR
|
|
|
CreateShortCut "$SMPROGRAMS\${TITLE}\Panda3D Manual.lnk" "$INSTDIR\Manual.url" "" "$INSTDIR\pandaIcon.ico" 0 "" "" "Panda3D Manual"
|
|
CreateShortCut "$SMPROGRAMS\${TITLE}\Panda3D Manual.lnk" "$INSTDIR\Manual.url" "" "$INSTDIR\pandaIcon.ico" 0 "" "" "Panda3D Manual"
|
|
|
CreateShortCut "$SMPROGRAMS\${TITLE}\Panda3D Website.lnk" "$INSTDIR\Website.url" "" "$INSTDIR\pandaIcon.ico" 0 "" "" "Panda3D Website"
|
|
CreateShortCut "$SMPROGRAMS\${TITLE}\Panda3D Website.lnk" "$INSTDIR\Website.url" "" "$INSTDIR\pandaIcon.ico" 0 "" "" "Panda3D Website"
|
|
|
CreateShortCut "$SMPROGRAMS\${TITLE}\Sample Program Manual.lnk" "$INSTDIR\Samples.url" "" "$INSTDIR\pandaIcon.ico" 0 "" "" "Sample Program Manual"
|
|
CreateShortCut "$SMPROGRAMS\${TITLE}\Sample Program Manual.lnk" "$INSTDIR\Samples.url" "" "$INSTDIR\pandaIcon.ico" 0 "" "" "Sample Program Manual"
|
|
|
|
|
|
|
|
|
|
+ ${Unless} ${AtLeastWin8}
|
|
|
FindFirst $0 $1 $INSTDIR\samples\*
|
|
FindFirst $0 $1 $INSTDIR\samples\*
|
|
|
loop:
|
|
loop:
|
|
|
StrCmp $1 "" done
|
|
StrCmp $1 "" done
|
|
@@ -620,16 +641,10 @@ Section "Sample programs" SecSamples
|
|
|
Call Capitalize
|
|
Call Capitalize
|
|
|
Pop $R0
|
|
Pop $R0
|
|
|
StrCpy $READABLE $R0
|
|
StrCpy $READABLE $R0
|
|
|
- Push $1
|
|
|
|
|
- Push "-"
|
|
|
|
|
- Push "_"
|
|
|
|
|
- Call StrRep
|
|
|
|
|
- Pop $R0
|
|
|
|
|
- StrCpy $MANPAGE $R0
|
|
|
|
|
DetailPrint "Creating shortcuts for sample program $READABLE"
|
|
DetailPrint "Creating shortcuts for sample program $READABLE"
|
|
|
CreateDirectory "$SMPROGRAMS\${TITLE}\Sample Programs\$READABLE"
|
|
CreateDirectory "$SMPROGRAMS\${TITLE}\Sample Programs\$READABLE"
|
|
|
SetOutPath $INSTDIR\samples\$1
|
|
SetOutPath $INSTDIR\samples\$1
|
|
|
- WriteINIStr $INSTDIR\samples\$1\ManualPage.url "InternetShortcut" "URL" "https://www.panda3d.org/wiki/index.php/Sample_Programs:_$MANPAGE"
|
|
|
|
|
|
|
+ WriteINIStr $INSTDIR\samples\$1\ManualPage.url "InternetShortcut" "URL" "https://docs.panda3d.org/${MAJOR_VER}/python/more-resources/samples/$1"
|
|
|
CreateShortCut "$SMPROGRAMS\${TITLE}\Sample Programs\$READABLE\Manual Page.lnk" "$INSTDIR\samples\$1\ManualPage.url" "" "$INSTDIR\pandaIcon.ico" 0 "" "" "Manual Entry on this Sample Program"
|
|
CreateShortCut "$SMPROGRAMS\${TITLE}\Sample Programs\$READABLE\Manual Page.lnk" "$INSTDIR\samples\$1\ManualPage.url" "" "$INSTDIR\pandaIcon.ico" 0 "" "" "Manual Entry on this Sample Program"
|
|
|
CreateShortCut "$SMPROGRAMS\${TITLE}\Sample Programs\$READABLE\View Source Code.lnk" "$INSTDIR\samples\$1"
|
|
CreateShortCut "$SMPROGRAMS\${TITLE}\Sample Programs\$READABLE\View Source Code.lnk" "$INSTDIR\samples\$1"
|
|
|
iloop:
|
|
iloop:
|
|
@@ -643,6 +658,7 @@ Section "Sample programs" SecSamples
|
|
|
FindNext $0 $1
|
|
FindNext $0 $1
|
|
|
Goto loop
|
|
Goto loop
|
|
|
done:
|
|
done:
|
|
|
|
|
+ ${EndUnless}
|
|
|
SectionEnd
|
|
SectionEnd
|
|
|
!endif
|
|
!endif
|
|
|
|
|
|
|
@@ -803,12 +819,14 @@ Section Uninstall
|
|
|
!insertmacro RemovePythonPath 3.7-32
|
|
!insertmacro RemovePythonPath 3.7-32
|
|
|
!insertmacro RemovePythonPath 3.8-32
|
|
!insertmacro RemovePythonPath 3.8-32
|
|
|
!insertmacro RemovePythonPath 3.9-32
|
|
!insertmacro RemovePythonPath 3.9-32
|
|
|
|
|
+ !insertmacro RemovePythonPath 3.10-32
|
|
|
!else
|
|
!else
|
|
|
!insertmacro RemovePythonPath 3.5
|
|
!insertmacro RemovePythonPath 3.5
|
|
|
!insertmacro RemovePythonPath 3.6
|
|
!insertmacro RemovePythonPath 3.6
|
|
|
!insertmacro RemovePythonPath 3.7
|
|
!insertmacro RemovePythonPath 3.7
|
|
|
!insertmacro RemovePythonPath 3.8
|
|
!insertmacro RemovePythonPath 3.8
|
|
|
!insertmacro RemovePythonPath 3.9
|
|
!insertmacro RemovePythonPath 3.9
|
|
|
|
|
+ !insertmacro RemovePythonPath 3.10
|
|
|
!endif
|
|
!endif
|
|
|
|
|
|
|
|
SetDetailsPrint both
|
|
SetDetailsPrint both
|
|
@@ -876,12 +894,14 @@ SectionEnd
|
|
|
!insertmacro MUI_DESCRIPTION_TEXT ${SecPyBindings3.7-32} $(DESC_SecPyBindings3.7-32)
|
|
!insertmacro MUI_DESCRIPTION_TEXT ${SecPyBindings3.7-32} $(DESC_SecPyBindings3.7-32)
|
|
|
!insertmacro MUI_DESCRIPTION_TEXT ${SecPyBindings3.8-32} $(DESC_SecPyBindings3.8-32)
|
|
!insertmacro MUI_DESCRIPTION_TEXT ${SecPyBindings3.8-32} $(DESC_SecPyBindings3.8-32)
|
|
|
!insertmacro MUI_DESCRIPTION_TEXT ${SecPyBindings3.9-32} $(DESC_SecPyBindings3.9-32)
|
|
!insertmacro MUI_DESCRIPTION_TEXT ${SecPyBindings3.9-32} $(DESC_SecPyBindings3.9-32)
|
|
|
|
|
+ !insertmacro MUI_DESCRIPTION_TEXT ${SecPyBindings3.10-32} $(DESC_SecPyBindings3.10-32)
|
|
|
!else
|
|
!else
|
|
|
!insertmacro MUI_DESCRIPTION_TEXT ${SecPyBindings3.5} $(DESC_SecPyBindings3.5)
|
|
!insertmacro MUI_DESCRIPTION_TEXT ${SecPyBindings3.5} $(DESC_SecPyBindings3.5)
|
|
|
!insertmacro MUI_DESCRIPTION_TEXT ${SecPyBindings3.6} $(DESC_SecPyBindings3.6)
|
|
!insertmacro MUI_DESCRIPTION_TEXT ${SecPyBindings3.6} $(DESC_SecPyBindings3.6)
|
|
|
!insertmacro MUI_DESCRIPTION_TEXT ${SecPyBindings3.7} $(DESC_SecPyBindings3.7)
|
|
!insertmacro MUI_DESCRIPTION_TEXT ${SecPyBindings3.7} $(DESC_SecPyBindings3.7)
|
|
|
!insertmacro MUI_DESCRIPTION_TEXT ${SecPyBindings3.8} $(DESC_SecPyBindings3.8)
|
|
!insertmacro MUI_DESCRIPTION_TEXT ${SecPyBindings3.8} $(DESC_SecPyBindings3.8)
|
|
|
!insertmacro MUI_DESCRIPTION_TEXT ${SecPyBindings3.9} $(DESC_SecPyBindings3.9)
|
|
!insertmacro MUI_DESCRIPTION_TEXT ${SecPyBindings3.9} $(DESC_SecPyBindings3.9)
|
|
|
|
|
+ !insertmacro MUI_DESCRIPTION_TEXT ${SecPyBindings3.10} $(DESC_SecPyBindings3.10)
|
|
|
!endif
|
|
!endif
|
|
|
!ifdef INCLUDE_PYVER
|
|
!ifdef INCLUDE_PYVER
|
|
|
!insertmacro MUI_DESCRIPTION_TEXT ${SecPython} $(DESC_SecPython)
|
|
!insertmacro MUI_DESCRIPTION_TEXT ${SecPython} $(DESC_SecPython)
|