Browse Source

Make ISPP a regular project by moving files in regular places. Might not be fully done yet so on a branch.

Martijn Laan 1 year ago
parent
commit
e6a6b15309
45 changed files with 105 additions and 113 deletions
  1. 0 0
      ISPPHelp/.gitignore
  2. 0 0
      ISPPHelp/Staging/.gitignore
  3. 0 0
      ISPPHelp/Staging/contents-template.htm
  4. 0 0
      ISPPHelp/Staging/contents.css
  5. 0 0
      ISPPHelp/Staging/contents.js
  6. 0 0
      ISPPHelp/Staging/hh_project.hhp
  7. 0 0
      ISPPHelp/Staging/images/contentsheadclosed.png
  8. 0 0
      ISPPHelp/Staging/images/contentsheadopen.png
  9. 0 0
      ISPPHelp/Staging/images/contentstopic.png
  10. 0 0
      ISPPHelp/Staging/images/extlink.png
  11. 0 0
      ISPPHelp/Staging/index.htm
  12. 0 0
      ISPPHelp/Staging/index.php
  13. 0 0
      ISPPHelp/Staging/stoplist.stp
  14. 0 0
      ISPPHelp/Staging/styles.css
  15. 0 0
      ISPPHelp/Staging/topic.js
  16. 3 3
      ISPPHelp/compile.bat
  17. 0 0
      ISPPHelp/isetup.dtd
  18. 0 0
      ISPPHelp/ispp.dtd
  19. 0 0
      ISPPHelp/ispp.xml
  20. 0 0
      ISPPHelp/ispp.xsl
  21. 21 0
      ISPPHelp/synch-isfiles.bat
  22. 48 0
      Projects/ISPP.dpr
  23. 20 20
      Projects/ISPP.dproj
  24. 0 2
      Projects/ISPP/.gitignore
  25. 0 1
      Projects/ISPP/Dcu/.gitignore
  26. 0 21
      Projects/ISPP/Help/synch-isfiles.bat
  27. 0 48
      Projects/ISPP/ISPP.dpr
  28. 4 4
      Projects/Projects.groupproj
  29. 0 0
      Projects/Res/ISPP.version.res
  30. 0 0
      Projects/Src/ISPP/CTokenizer.pas
  31. 0 0
      Projects/Src/ISPP/IsppBase.pas
  32. 0 0
      Projects/Src/ISPP/IsppConsts.pas
  33. 0 0
      Projects/Src/ISPP/IsppFuncs.pas
  34. 0 0
      Projects/Src/ISPP/IsppIdentMan.pas
  35. 0 0
      Projects/Src/ISPP/IsppIntf.pas
  36. 0 0
      Projects/Src/ISPP/IsppParser.pas
  37. 0 0
      Projects/Src/ISPP/IsppPreprocess.pas
  38. 0 0
      Projects/Src/ISPP/IsppPreprocessor.pas
  39. 0 0
      Projects/Src/ISPP/IsppSessions.pas
  40. 0 0
      Projects/Src/ISPP/IsppStack.pas
  41. 0 0
      Projects/Src/ISPP/IsppVarUtils.pas
  42. 4 4
      README.md
  43. 2 2
      build-ce.bat
  44. 2 2
      build.bat
  45. 1 6
      compile.bat

+ 0 - 0
Projects/ISPP/Help/.gitignore → ISPPHelp/.gitignore


+ 0 - 0
Projects/ISPP/Help/Staging/.gitignore → ISPPHelp/Staging/.gitignore


+ 0 - 0
Projects/ISPP/Help/Staging/contents-template.htm → ISPPHelp/Staging/contents-template.htm


+ 0 - 0
Projects/ISPP/Help/Staging/contents.css → ISPPHelp/Staging/contents.css


+ 0 - 0
Projects/ISPP/Help/Staging/contents.js → ISPPHelp/Staging/contents.js


+ 0 - 0
Projects/ISPP/Help/Staging/hh_project.hhp → ISPPHelp/Staging/hh_project.hhp


+ 0 - 0
Projects/ISPP/Help/Staging/images/contentsheadclosed.png → ISPPHelp/Staging/images/contentsheadclosed.png


+ 0 - 0
Projects/ISPP/Help/Staging/images/contentsheadopen.png → ISPPHelp/Staging/images/contentsheadopen.png


+ 0 - 0
Projects/ISPP/Help/Staging/images/contentstopic.png → ISPPHelp/Staging/images/contentstopic.png


+ 0 - 0
Projects/ISPP/Help/Staging/images/extlink.png → ISPPHelp/Staging/images/extlink.png


+ 0 - 0
Projects/ISPP/Help/Staging/index.htm → ISPPHelp/Staging/index.htm


+ 0 - 0
Projects/ISPP/Help/Staging/index.php → ISPPHelp/Staging/index.php


+ 0 - 0
Projects/ISPP/Help/Staging/stoplist.stp → ISPPHelp/Staging/stoplist.stp


+ 0 - 0
Projects/ISPP/Help/Staging/styles.css → ISPPHelp/Staging/styles.css


+ 0 - 0
Projects/ISPP/Help/Staging/topic.js → ISPPHelp/Staging/topic.js


+ 3 - 3
Projects/ISPP/Help/compile.bat → ISPPHelp/compile.bat

@@ -30,7 +30,7 @@ if errorlevel 1 goto failed
 
 echo Generating help files using ISHelpGen:
 echo.
-..\..\..\ishelp\ISHelpGen\ISHelpGen.exe .
+..\ISHelp\ISHelpGen\ISHelpGen.exe .
 if errorlevel 1 goto failed
 
 echo.
@@ -45,8 +45,8 @@ if not exist Staging\ispp.chm goto failed
 rem  HHC leaves behind a temporary file each time it runs...
 if exist "%TEMP%\~hh*.tmp" del /q "%TEMP%\~hh*.tmp"
 
-copy Staging\ispp.chm ..\..\..\Files\ISPP.chm
-if not exist ..\..\..\Files\ISPP.chm goto failed
+copy Staging\ispp.chm ..\Files\ISPP.chm
+if not exist ..\Files\ISPP.chm goto failed
 
 echo Success!
 exit /b 0

+ 0 - 0
Projects/ISPP/Help/isetup.dtd → ISPPHelp/isetup.dtd


+ 0 - 0
Projects/ISPP/Help/ispp.dtd → ISPPHelp/ispp.dtd


+ 0 - 0
Projects/ISPP/Help/ispp.xml → ISPPHelp/ispp.xml


+ 0 - 0
Projects/ISPP/Help/ispp.xsl → ISPPHelp/ispp.xsl


+ 21 - 0
ISPPHelp/synch-isfiles.bat

@@ -0,0 +1,21 @@
+@echo off
+
+cd /d %~dp0
+
+echo - Synching files from ISHelp to ISPPHelp
+
+copy ..\ISHelp\isetup.dtd
+copy ..\ISHelp\Staging\contents.css Staging
+copy ..\ISHelp\Staging\contents.js Staging
+copy ..\ISHelp\Staging\styles.css Staging
+copy ..\ISHelp\Staging\topic.js Staging
+copy ..\ISHelp\Staging\images\contentsheadclosed.png Staging\images
+copy ..\ISHelp\Staging\images\contentsheadopen.png Staging\images
+copy ..\ISHelp\Staging\images\contentstopic.png Staging\images
+copy ..\ISHelp\Staging\images\extlink.png Staging\images
+
+echo - Synching files done
+
+if "%1"=="nopause" goto :eof
+
+pause

+ 48 - 0
Projects/ISPP.dpr

@@ -0,0 +1,48 @@
+{
+  Inno Setup Preprocessor
+  Copyright (C) 2001-2002 Alex Yackimoff
+  
+  Inno Setup
+  Copyright (C) 1997-2024 Jordan Russell
+  Portions by Martijn Laan
+  For conditions of distribution and use, see LICENSE.TXT.
+}
+
+library ISPP;
+
+uses
+  SysUtils,
+  Windows,
+  Classes,
+  CompPreprocInt in 'Src\ISCmplr\CompPreprocInt.pas',
+  IsppPreprocess in 'Src\ISPP\IsppPreprocess.pas',
+  IsppPreprocessor in 'Src\ISPP\IsppPreprocessor.pas',
+  IsppFuncs in 'Src\ISPP\IsppFuncs.pas',
+  IsppVarUtils in 'Src\ISPP\IsppVarUtils.pas',
+  IsppConsts in 'Src\ISPP\IsppConsts.pas',
+  IsppStack in 'Src\ISPP\IsppStack.pas',
+  IsppIntf in 'Src\ISPP\IsppIntf.pas',
+  IsppParser in 'Src\ISPP\IsppParser.pas',
+  IsppIdentMan in 'Src\ISPP\IsppIdentMan.pas',
+  IsppSessions in 'Src\ISPP\IsppSessions.pas',
+  CTokenizer in 'Src\ISPP\CTokenizer.pas',
+  IsppBase in 'Src\ISPP\IsppBase.pas',
+  PathFunc in '..\Components\PathFunc.pas',
+  CmnFunc2 in 'Src\CmnFunc2.pas',
+  FileClass in 'Src\FileClass.pas',
+  Int64Em in 'Src\Int64Em.pas',
+  MD5 in '..\Components\MD5.pas',
+  SHA1 in '..\Components\SHA1.pas',
+  Struct in 'Src\Struct.pas';
+  
+{$IMAGEBASE $01800000}
+{$SETPEOSVERSION 6.1}
+{$SETPESUBSYSVERSION 6.1}
+{$WEAKLINKRTTI ON}
+
+{$R Res\ISPP.version.res}
+
+exports
+  ISPreprocessScript name 'ISPreprocessScriptW';
+
+end.

+ 20 - 20
Projects/ISPP/ISPP.dproj → Projects/ISPP.dproj

@@ -77,26 +77,26 @@
         <DelphiCompile Include="$(MainSource)">
             <MainSource>MainSource</MainSource>
         </DelphiCompile>
-        <DCCReference Include="..\Src\ISCmplr\CompPreprocInt.pas"/>
-        <DCCReference Include="IsppPreprocess.pas"/>
-        <DCCReference Include="IsppPreprocessor.pas"/>
-        <DCCReference Include="IsppFuncs.pas"/>
-        <DCCReference Include="IsppVarUtils.pas"/>
-        <DCCReference Include="IsppConsts.pas"/>
-        <DCCReference Include="IsppStack.pas"/>
-        <DCCReference Include="IsppIntf.pas"/>
-        <DCCReference Include="IsppParser.pas"/>
-        <DCCReference Include="IsppIdentMan.pas"/>
-        <DCCReference Include="IsppSessions.pas"/>
-        <DCCReference Include="CTokenizer.pas"/>
-        <DCCReference Include="IsppBase.pas"/>
-        <DCCReference Include="..\..\Components\PathFunc.pas"/>
-        <DCCReference Include="..\Src\CmnFunc2.pas"/>
-        <DCCReference Include="..\Src\FileClass.pas"/>
-        <DCCReference Include="..\Src\Int64Em.pas"/>
-        <DCCReference Include="..\..\Components\MD5.pas"/>
-        <DCCReference Include="..\..\Components\SHA1.pas"/>
-        <DCCReference Include="..\Src\Struct.pas"/>
+        <DCCReference Include="Src\ISCmplr\CompPreprocInt.pas"/>
+        <DCCReference Include="Src\ISPP\IsppPreprocess.pas"/>
+        <DCCReference Include="Src\ISPP\IsppPreprocessor.pas"/>
+        <DCCReference Include="Src\ISPP\IsppFuncs.pas"/>
+        <DCCReference Include="Src\ISPP\IsppVarUtils.pas"/>
+        <DCCReference Include="Src\ISPP\IsppConsts.pas"/>
+        <DCCReference Include="Src\ISPP\IsppStack.pas"/>
+        <DCCReference Include="Src\ISPP\IsppIntf.pas"/>
+        <DCCReference Include="Src\ISPP\IsppParser.pas"/>
+        <DCCReference Include="Src\ISPP\IsppIdentMan.pas"/>
+        <DCCReference Include="Src\ISPP\IsppSessions.pas"/>
+        <DCCReference Include="Src\ISPP\CTokenizer.pas"/>
+        <DCCReference Include="Src\ISPP\IsppBase.pas"/>
+        <DCCReference Include="..\Components\PathFunc.pas"/>
+        <DCCReference Include="Src\CmnFunc2.pas"/>
+        <DCCReference Include="Src\FileClass.pas"/>
+        <DCCReference Include="Src\Int64Em.pas"/>
+        <DCCReference Include="..\Components\MD5.pas"/>
+        <DCCReference Include="..\Components\SHA1.pas"/>
+        <DCCReference Include="Src\Struct.pas"/>
         <BuildConfiguration Include="Base">
             <Key>Base</Key>
         </BuildConfiguration>

+ 0 - 2
Projects/ISPP/.gitignore

@@ -1,2 +0,0 @@
-compilesettings.bat
-!ISPP.version.res

+ 0 - 1
Projects/ISPP/Dcu/.gitignore

@@ -1 +0,0 @@
-*.dcu

+ 0 - 21
Projects/ISPP/Help/synch-isfiles.bat

@@ -1,21 +0,0 @@
-@echo off
-
-cd /d %~dp0
-
-echo - Synching files from ISHelp to Projects\ISPP\Help
-
-copy ..\..\..\ISHelp\isetup.dtd
-copy ..\..\..\ISHelp\Staging\contents.css Staging
-copy ..\..\..\ISHelp\Staging\contents.js Staging
-copy ..\..\..\ISHelp\Staging\styles.css Staging
-copy ..\..\..\ISHelp\Staging\topic.js Staging
-copy ..\..\..\ISHelp\Staging\images\contentsheadclosed.png Staging\images
-copy ..\..\..\ISHelp\Staging\images\contentsheadopen.png Staging\images
-copy ..\..\..\ISHelp\Staging\images\contentstopic.png Staging\images
-copy ..\..\..\ISHelp\Staging\images\extlink.png Staging\images
-
-echo - Synching files done
-
-if "%1"=="nopause" goto :eof
-
-pause

+ 0 - 48
Projects/ISPP/ISPP.dpr

@@ -1,48 +0,0 @@
-{
-  Inno Setup Preprocessor
-  Copyright (C) 2001-2002 Alex Yackimoff
-  
-  Inno Setup
-  Copyright (C) 1997-2024 Jordan Russell
-  Portions by Martijn Laan
-  For conditions of distribution and use, see LICENSE.TXT.
-}
-
-library ISPP;
-
-uses
-  SysUtils,
-  Windows,
-  Classes,
-  CompPreprocInt in '..\Src\ISCmplr\CompPreprocInt.pas',
-  IsppPreprocess in 'IsppPreprocess.pas',
-  IsppPreprocessor in 'IsppPreprocessor.pas',
-  IsppFuncs in 'IsppFuncs.pas',
-  IsppVarUtils in 'IsppVarUtils.pas',
-  IsppConsts in 'IsppConsts.pas',
-  IsppStack in 'IsppStack.pas',
-  IsppIntf in 'IsppIntf.pas',
-  IsppParser in 'IsppParser.pas',
-  IsppIdentMan in 'IsppIdentMan.pas',
-  IsppSessions in 'IsppSessions.pas',
-  CTokenizer in 'CTokenizer.pas',
-  IsppBase in 'IsppBase.pas',
-  PathFunc in '..\..\Components\PathFunc.pas',
-  CmnFunc2 in '..\Src\CmnFunc2.pas',
-  FileClass in '..\Src\FileClass.pas',
-  Int64Em in '..\Src\Int64Em.pas',
-  MD5 in '..\..\Components\MD5.pas',
-  SHA1 in '..\..\Components\SHA1.pas',
-  Struct in '..\Src\Struct.pas';
-  
-{$IMAGEBASE $01800000}
-{$SETPEOSVERSION 6.1}
-{$SETPESUBSYSVERSION 6.1}
-{$WEAKLINKRTTI ON}
-
-{$R ISPP.version.res}
-
-exports
-  ISPreprocessScript name 'ISPreprocessScriptW';
-
-end.

+ 4 - 4
Projects/Projects.groupproj

@@ -12,7 +12,7 @@
         <Projects Include="ISCmplr.dproj">
             <Dependencies/>
         </Projects>
-        <Projects Include="ISPP\ISPP.dproj">
+        <Projects Include="ISPP.dproj">
             <Dependencies/>
         </Projects>
         <Projects Include="Setup.dproj">
@@ -60,13 +60,13 @@
         <MSBuild Projects="ISCmplr.dproj" Targets="Make"/>
     </Target>
     <Target Name="ISPP">
-        <MSBuild Projects="ISPP\ISPP.dproj"/>
+        <MSBuild Projects="ISPP.dproj"/>
     </Target>
     <Target Name="ISPP:Clean">
-        <MSBuild Projects="ISPP\ISPP.dproj" Targets="Clean"/>
+        <MSBuild Projects="ISPP.dproj" Targets="Clean"/>
     </Target>
     <Target Name="ISPP:Make">
-        <MSBuild Projects="ISPP\ISPP.dproj" Targets="Make"/>
+        <MSBuild Projects="ISPP.dproj" Targets="Make"/>
     </Target>
     <Target Name="Setup">
         <MSBuild Projects="Setup.dproj"/>

+ 0 - 0
Projects/ISPP/ISPP.version.res → Projects/Res/ISPP.version.res


+ 0 - 0
Projects/ISPP/CTokenizer.pas → Projects/Src/ISPP/CTokenizer.pas


+ 0 - 0
Projects/ISPP/IsppBase.pas → Projects/Src/ISPP/IsppBase.pas


+ 0 - 0
Projects/ISPP/IsppConsts.pas → Projects/Src/ISPP/IsppConsts.pas


+ 0 - 0
Projects/ISPP/IsppFuncs.pas → Projects/Src/ISPP/IsppFuncs.pas


+ 0 - 0
Projects/ISPP/IsppIdentMan.pas → Projects/Src/ISPP/IsppIdentMan.pas


+ 0 - 0
Projects/ISPP/IsppIntf.pas → Projects/Src/ISPP/IsppIntf.pas


+ 0 - 0
Projects/ISPP/IsppParser.pas → Projects/Src/ISPP/IsppParser.pas


+ 0 - 0
Projects/ISPP/IsppPreprocess.pas → Projects/Src/ISPP/IsppPreprocess.pas


+ 0 - 0
Projects/ISPP/IsppPreprocessor.pas → Projects/Src/ISPP/IsppPreprocessor.pas


+ 0 - 0
Projects/ISPP/IsppSessions.pas → Projects/Src/ISPP/IsppSessions.pas


+ 0 - 0
Projects/ISPP/IsppStack.pas → Projects/Src/ISPP/IsppStack.pas


+ 0 - 0
Projects/ISPP/IsppVarUtils.pas → Projects/Src/ISPP/IsppVarUtils.pas


+ 4 - 4
README.md

@@ -80,7 +80,7 @@ Getting Started
    Community Edition, open Projects\Projects.groupproj instead.
 
    To just compile the Inno Setup Preprocessor help file and its web version run
-   **ISHelp\ISHelpGen\compile.bat** and **Projects\Ispp\Help\compile.bat** and
+   **ISHelp\ISHelpGen\compile.bat** and **ISPPHelp\compile.bat** and
    follow the instructions. The former batch file cannot be used with the
    Community Edition, open Projects\Projects.groupproj instead.
 
@@ -137,6 +137,8 @@ Compil32, it depends on ISCmplr.dll to do the actual compiling.
 scripts. The actual compiler code is in Compile.pas. See CompInt.pas for the
 various structures and function declarations used to interface to the DLL.
 
+**ISPP** - This is a DLL implementing Inno Setup's preprocessor interface.
+
 **Setup** - This is the actual "Setup" program. It displays the wizard, and
 performs all (un)installation-related tasks.
 
@@ -144,8 +146,6 @@ performs all (un)installation-related tasks.
 Setup program into the user's TEMP directory and runs it from there. It also
 displays the "This will install..." and /HELP message boxes.
 
-**ISPP\ISPP** - This is a DLL implementing Inno Setup's preprocessor interface.
-
 How do the projects link together?
 
 - ISCmplr, ISPP, Setup, and SetupLdr share the unit Struct.pas. This unit
@@ -160,7 +160,7 @@ How do the projects link together?
   projects for unit usage details.
 
 - The ISPP help file uses various copies of other Inno Setup files. To synch
-  these run **ISPP\Help\synch-isfiles.bat**.
+  these run **ISPPHelp\synch-isfiles.bat**.
 
 
 Source code tips

+ 2 - 2
build-ce.bat

@@ -53,11 +53,11 @@ call :waitforfile ishelp\ishelpgen\ishelpgen.exe
 echo Found all, waiting 2 seconds more...
 timeout /t 2 /nobreak >nul
 
-cd projects\ispp\help
+cd ispphelp
 if errorlevel 1 goto failed
 call .\compile.bat
 if errorlevel 1 goto failed
-cd ..\..\..
+cd ..
 if errorlevel 1 goto failed
 echo Compiling ISPP.chm done
 pause

+ 2 - 2
build.bat

@@ -39,11 +39,11 @@ if errorlevel 1 goto failed
 echo Compiling ISHelpGen done
 pause
 
-cd projects\ispp\help
+cd ispphelp
 if errorlevel 1 goto failed
 call .\compile.bat
 if errorlevel 1 goto failed
-cd ..\..\..
+cd ..
 if errorlevel 1 goto failed
 echo Compiling ISPP.chm done
 pause

+ 1 - 6
compile.bat

@@ -33,15 +33,10 @@ set DELPHIXEDISABLEDWARNINGS=-W-SYMBOL_DEPRECATED -W-SYMBOL_PLATFORM -W-UNSAFE_C
 cd Projects
 if errorlevel 1 goto exit
 
-cd ISPP
-if errorlevel 1 goto failed
-
 echo - ISPP.dpr
-"%DELPHIXEROOT%\bin\dcc32.exe" --no-config -NSsystem;system.win;winapi -Q -B -H -W %DELPHIXEDISABLEDWARNINGS% %1 -U"%DELPHIXEROOT%\lib\win32\release" -E..\..\Files -NUDcu ISPP.dpr
+"%DELPHIXEROOT%\bin\dcc32.exe" --no-config -NSsystem;system.win;winapi -Q -B -H -W %DELPHIXEDISABLEDWARNINGS% %1 -U"%DELPHIXEROOT%\lib\win32\release" -E..\Files -NUDcu ISPP.dpr
 if errorlevel 1 goto failed
 
-cd ..
-
 echo - Compil32.dpr
 mkdir Dcu\Compil32.dpr 2>nul
 "%DELPHIXEROOT%\bin\dcc32.exe" --no-config -NSsystem;system.win;winapi;vcl;vcl.imaging -Q -B -H -W %DELPHIXEDISABLEDWARNINGS% %1 -U"%DELPHIXEROOT%\lib\win32\release;..\Components\UniPs\Source;ISPP" -E..\Files -NUDcu\Compil32.dpr -DCOMPIL32PROJ;PS_MINIVCL;PS_NOGRAPHCONST;PS_PANSICHAR;PS_NOINTERFACEGUIDBRACKETS Compil32.dpr