⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 lapackpp.iss.in

📁 LAPACK++ (Linear Algebra PACKage in C++) is a software library for numerical linear algebra that sol
💻 IN
字号:
; Script generated by the Inno Setup Script Wizard and heavily
; modified by hand by Christian Stimming.
;
; Inno Setup Compiler: See http://www.jrsoftware.org/isdl.php
;

[Setup]
; Using the name here directly because we want it capitalized
AppName=Lapackpp
AppVerName=Lapackpp @VERSION@
AppPublisher=Lapackpp Development Team
AppPublisherURL=http://lapackpp.sourceforge.net
AppSupportURL=http://sourceforge.net/support/getsupport.php?group_id=99696
AppUpdatesURL=http://sourceforge.net/project/showfiles.php?group_id=99696
DefaultDirName={pf}\@PACKAGE@
DirExistsWarning=no
LicenseFile=COPYING
OutputDir=.
@ISCC_WITHOUT_DLL@OutputBaseFilename=@PACKAGE@-@VERSION@-setup
@ISCC_WITH_DLL@OutputBaseFilename=@PACKAGE@-@VERSION@-MSVC-setup

[Types]
Name: "full"; Description: "{cm:FullInstall}"
Name: "binary"; Description: "{cm:BinaryInstall}"
Name: "custom"; Description: "{cm:CustomInstall}"; Flags: iscustom

[Components]
Name: "main"; Description: "{cm:MainFiles}"; Types: full binary custom; Flags: fixed
Name: "devel"; Description: "{cm:DevelFiles}"; Types: full
Name: "doc"; Description: "{cm:DocFiles}"; Types: full

[Files]
; The main gcc DLL
;; the old name, now unused: Source: "src\@PACKAGE@32.dll"; DestDir: "{win}"; DestName: "@PACKAGE@32.dll"; Flags: sharedfile promptifolder replacesameversion; Components: main
Source: "distribution\win32-tmp\bin\*.dll"; DestDir: "{win}"; Flags: sharedfile promptifolder replacesameversion; Components: main

; Distributing these DLLs as well because there is no extra package
; for them available.
Source: "c:\WINNT\liblapack32.dll"; DestDir: "{win}"; Flags: sharedfile promptifolder; Components: main
Source: "c:\WINNT\libblas32.dll"; DestDir: "{win}"; Flags: sharedfile promptifolder; Components: main
Source: "..\..\LAPACK\liblapack32.lib"; DestDir: "{app}\lib"; Components: devel
Source: "..\..\LAPACK\libblas32.lib"; DestDir: "{app}\lib"; Components: devel

; If chosen by the configuration, also include the MSVC lib file 
@ISCC_WITH_DLL@Source: "Debug\@PACKAGE@.dll"; DestDir: "{app}\bin"; Flags: sharedfile promptifolder replacesameversion; Components: main
@ISCC_WITH_DLL@Source: "Debug\@PACKAGE@.lib"; DestDir: "{app}\lib"; Flags: sharedfile promptifolder replacesameversion; Components: devel

; The library linker files
Source: "distribution\win32-tmp\lib\*"; DestDir: "{app}\lib"; Flags: ignoreversion recursesubdirs; Components: devel

; The pkgconfig file. It is post-processed by the Pascal script below.
Source: "@PACKAGE@.pc.in"; DestDir: "{app}\lib\pkgconfig"; Components: devel; AfterInstall: MyAfterInstallConfig(ExpandConstant('{app}\lib\pkgconfig\@PACKAGE@.pc'))

; The headers
Source: "distribution\win32-tmp\include\*"; DestDir: "{app}\include"; Flags: ignoreversion recursesubdirs; Components: devel

; The m4 macro
Source: "distribution\win32-tmp\share\*"; DestDir: "{app}\share"; Flags: ignoreversion recursesubdirs; Components: devel

; And all the documentation
Source: "COPYING"; DestDir: "{app}\doc\@PACKAGE@"; Flags: ignoreversion; Components: doc
Source: "README.W32"; DestDir: "{app}\doc\@PACKAGE@"; Components: doc
Source: "README"; DestDir: "{app}\doc\@PACKAGE@"; Components: doc
Source: "MAINTAINER"; DestDir: "{app}\doc\@PACKAGE@"; Components: doc
Source: "NEWS"; DestDir: "{app}\doc\@PACKAGE@"; Components: doc
Source: "ChangeLog"; DestDir: "{app}\doc\@PACKAGE@"; Components: doc

; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; Delete the created config script on uninstall
; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
[UninstallDelete]
Type: files; Name: "{app}\lib\pkgconfig\@PACKAGE@.pc"

; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; This large section is a Pascal scripting program that will modify
; the lapackpp.pc config file so that it then includes the
; correct values according to our local installation. See
; http://www.remobjects.com/?ps for a syntax reference.
; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
[Code]
function MingwBacksl(const S: String): String;
begin
  { Modify the path name S so that it can be used by MinGW }
  if Length(ExtractFileDrive(S)) = 0 then
    Result := S
  else begin
    Result := '/'+S;
    StringChange(Result, ':\', '\');
  end;
  StringChange(Result, '\', '/');
end;

procedure MyAfterInstallConfig(FileName: String);
var
  FileString, appdir, windir, includedir: String;
  Res: Boolean;
begin

  { Load the unchanged original file }
  Res := LoadStringFromFile(Format('%s.in',[FileName]), FileString);
  if Res = False then
    MsgBox('Error on loading '+FileName+'.in for final adaptation', mbInformation, MB_OK);

  { Get the installation-specific paths }
  windir := MingwBacksl(ExpandConstant('{win}'));
  appdir := MingwBacksl(ExpandConstant('{app}'));
  includedir := appdir + '/include';

  { Now make all the replacements }
  { Explanation: StringChange(S,FromStr,ToStr): Change all occurances in S of FromStr to ToStr. }
  StringChange(FileString, '@'+'prefix@', appdir);
  StringChange(FileString, '@'+'exec_prefix@', appdir);
  StringChange(FileString, '@'+'libdir@', windir);
  StringChange(FileString, '@'+'includedir@', includedir);
  StringChange(FileString, '@'+'datadir@', appdir + '/share');
  StringChange(FileString, '@'+'bindir@', appdir + '/bin');
  StringChange(FileString, '@'+'VERSION@', '@VERSION@');
  StringChange(FileString, '@'+'LAPACKPP_LIBS@', '@LAPACKPP_LIBS@');
  StringChange(FileString, '@'+'LAPACKPP_LDFLAGS@', '-L'+windir);

  { Save the final file }
  Res := SaveStringToFile(FileName, FileString, False);
  if Res = False then
    MsgBox('Error on saving '+FileName+' for final adaptation', mbInformation, MB_OK);

end;


[Languages]
Name: "en"; MessagesFile: "compiler:Default.isl"
Name: "de"; MessagesFile: "compiler:Languages\German.isl"

[CustomMessages]
FullInstall=Full installation
BinaryInstall=Install only libraries
CustomInstall=Custom installation

MainFiles=Lapackpp DLL Library (only for gcc compiler)
DevelFiles=Development files
DocFiles=Documentation files

de.FullInstall=Komplett-Installation
de.BinaryInstall=Nur Bibliotheken installieren
de.CustomInstall=Benutzerdefiniert

de.MainFiles=Lapackpp DLL Bibliothek (nur gcc Compiler)
de.DevelFiles=Entwickler-Dateien
de.DocFiles=Dokumentations-Dateien

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -