diff --git a/CMakeLists.txt b/CMakeLists.txt index 79d60e122..d2140afde 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -188,6 +188,7 @@ set(CMAKE_THREAD_PREFER_PTHREAD TRUE) set(THREADS_PREFER_PTHREAD_FLAG TRUE) find_package(Threads REQUIRED) +# win32 is in tree if(NOT IOS AND NOT ANDROID AND NOT WIN32) find_package(CURL REQUIRED) endif() diff --git a/daemon/CMakeLists.txt b/daemon/CMakeLists.txt index 685436f00..6b68f8cba 100644 --- a/daemon/CMakeLists.txt +++ b/daemon/CMakeLists.txt @@ -15,8 +15,8 @@ if(SHADOW) target_include_directories(${LOKINET_SHADOW} PUBLIC ${PROJECT_SOURCE_DIR}/include ${PROJECT_SOURCE_DIR}/llarp ${PROJECT_SOURCE_DIR}/crypto/include) else() if(WIN32 AND NOT MSVC_VERSION) - list(APPEND ${EXE_SRC} ../llarp/win32/version.rc) - list(APPEND ${CTL_SRC} ../llarp/win32/version.rc) + list(APPEND EXE_SRC ../llarp/win32/version.rc) + list(APPEND CTL_SRC ../llarp/win32/version.rc) endif() add_executable(${EXE} ${EXE_SRC}) @@ -31,7 +31,7 @@ else() install(TARGETS ${EXE} RUNTIME DESTINATION bin) install(TARGETS ${CTL} RUNTIME DESTINATION bin) if(WIN32) - install(PROGRAMS ${CMAKE_SOURCE_DIR}/lokinet-bootstrap.exe DESTINATION bin) + install(PROGRAMS ${CMAKE_SOURCE_DIR}/win32-setup/lokinet-bootstrap.exe DESTINATION bin) else() install(PROGRAMS ${CMAKE_SOURCE_DIR}/lokinet-bootstrap DESTINATION bin) endif() @@ -52,5 +52,22 @@ else() target_link_libraries(${CTL} PRIVATE ${CURL_LIBRARIES}) target_compile_definitions(${CTL} PRIVATE -DWITH_CURL=1) endif(CURL_FOUND) + if(WIN32) + target_include_directories(${CTL} PRIVATE ../win32-setup/include) + target_include_directories(${EXE} PRIVATE ../win32-setup/include) + target_compile_definitions(${CTL} PRIVATE -DWITH_CURL=1 -DCURL_STATICLIB) + target_compile_definitions(${EXE} PRIVATE -DWITH_CURL=1 -DCURL_STATICLIB) + if (CMAKE_SIZEOF_VOID_P EQUAL 8) + target_link_directories(${CTL} PRIVATE ../win32-setup/lib64) + target_link_directories(${EXE} PRIVATE ../win32-setup/lib64) + target_link_libraries(${CTL} PRIVATE curl crypt32) + target_link_libraries(${EXE} PRIVATE curl crypt32) + else() + target_link_directories(${CTL} PRIVATE ../win32-setup/lib) + target_link_directories(${EXE} PRIVATE ../win32-setup/lib) + target_link_libraries(${CTL} PRIVATE curl mbedtls mbedx509 mbedcrypto ws2_32) + target_link_libraries(${EXE} PRIVATE curl mbedtls mbedx509 mbedcrypto ws2_32) + endif() + endif(WIN32) endif(SHADOW) diff --git a/llarp/CMakeLists.txt b/llarp/CMakeLists.txt index 383bbe457..106a01747 100644 --- a/llarp/CMakeLists.txt +++ b/llarp/CMakeLists.txt @@ -64,6 +64,15 @@ add_library(${UTIL_LIB} STATIC ${LIB_UTIL_SRC}) add_dependencies(${UTIL_LIB} genversion) target_include_directories(${UTIL_LIB} PUBLIC ${CMAKE_CURRENT_SOURCE_DIR} ${PROJECT_SOURCE_DIR}/include) +if (WIN32) + target_include_directories(${UTIL_LIB} PUBLIC ../win32-setup/include) + target_compile_definitions(${UTIL_LIB} PUBLIC -DCURL_STATICLIB) + if(CMAKE_SIZEOF_VOID_P EQUAL 8) + target_link_libraries(${UTIL_LIB} PUBLIC ${CRYPTOGRAPHY_LIB} ${FS_LIB} ${LOG_LIB} curl crypt32 ws2_32) + else() + target_link_libraries(${UTIL_LIB} PUBLIC ${CRYPTOGRAPHY_LIB} ${FS_LIB} ${LOG_LIB} curl mbedtls mbedx509 mbedcrypto ws2_32) + endif() +endif() if(ANDROID) set(LOG_LIB log) endif() @@ -254,6 +263,9 @@ if(TESTNET) endif() add_library(${STATIC_LIB} STATIC ${LIB_SRC}) +if (WIN32) + target_include_directories(${STATIC_LIB} PUBLIC ../win32-setup/include) +endif() target_include_directories(${STATIC_LIB} PUBLIC ${CURL_INCLUDE_DIRS}) target_link_libraries(${STATIC_LIB} PUBLIC cxxopts ${ABYSS_LIB} ${PLATFORM_LIB} ${UTIL_LIB} ${CRYPTOGRAPHY_LIB} ${CURL_LIBRARIES}) diff --git a/llarp/config/key_manager.cpp b/llarp/config/key_manager.cpp index 71a97f304..3cb711a2e 100644 --- a/llarp/config/key_manager.cpp +++ b/llarp/config/key_manager.cpp @@ -6,9 +6,7 @@ #include "crypto/crypto.hpp" #include "crypto/types.hpp" -#ifndef _WIN32 #include -#endif /// curl callback static size_t diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index 3aea0d14e..17f8cd068 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -58,7 +58,7 @@ add_executable(${TEST_EXE} ${TEST_SRC} ) -target_link_libraries(${TEST_EXE} PUBLIC gmock gtest ${STATIC_LIB}) +target_link_libraries(${TEST_EXE} PUBLIC gmock gtest curl ${STATIC_LIB}) target_include_directories(${TEST_EXE} PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}) if(NOT WIN32) diff --git a/test/win32/test.rc b/test/win32/test.rc index 4be81a76f..9af90d8af 100644 --- a/test/win32/test.rc +++ b/test/win32/test.rc @@ -81,26 +81,22 @@ BEGIN VALUE "CompanyName", "Loki Foundation" VALUE "FileDescription", "LokiNET for Microsoft® Windows® NT™" #ifdef LLARP_RELEASE_MOTTO - VALUE "FileVersion", VERSION_STRING(0.5.2, RELEASE_MOTTO, GIT_REV) + VALUE "FileVersion", VERSION_STRING(0.6.0, RELEASE_MOTTO, GIT_REV) +#elif __GNUC__ + VALUE "FileVersion", VERSION_STRING(0.6.0-dev-, GIT_REV) #else -#ifdef __GNUC__ - VALUE "FileVersion", VERSION_STRING(0.5.2-dev-, GIT_REV) -#else - VALUE "FileVersion", "0.5.2-dev" -#endif + VALUE "FileVersion", "0.6.0-dev" #endif VALUE "InternalName", "llarpd" VALUE "LegalCopyright", "Copyright ©2018-2019 Jeff Becker, Rick V for the Loki Foundation. All rights reserved. This software is provided under the terms of the zlib-libpng licence; see the file LICENSE for details." VALUE "OriginalFilename", "llarpd.exe" VALUE "ProductName", "LokiNET for Windows" #ifdef LLARP_RELEASE_MOTTO - VALUE "ProductVersion", VERSION_STRING(0.5.2, RELEASE_MOTTO, GIT_REV) + VALUE "ProductVersion", VERSION_STRING(0.6.0, RELEASE_MOTTO, GIT_REV) +#elif __GNUC__ + VALUE "ProductVersion", VERSION_STRING(0.6.0-dev-, GIT_REV) #else -#ifdef __GNUC__ - VALUE "ProductVersion", VERSION_STRING(0.5.2-dev-, GIT_REV) -#else - VALUE "ProductVersion", "0.5.2-dev" -#endif + VALUE "ProductVersion", "0.6.0-dev" #endif END END diff --git a/ui-win32/UIMain.Designer.cs b/ui-win32/UIMain.Designer.cs index 5e880ce56..08aee13e5 100644 --- a/ui-win32/UIMain.Designer.cs +++ b/ui-win32/UIMain.Designer.cs @@ -33,19 +33,19 @@ this.StatusLabel = new System.Windows.Forms.Label(); this.lokinetd_fd1 = new System.Windows.Forms.TextBox(); this.NotificationTrayIcon = new System.Windows.Forms.NotifyIcon(this.components); + this.TrayMenu = new System.Windows.Forms.ContextMenuStrip(this.components); + this.showToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.TrayConnect = new System.Windows.Forms.ToolStripMenuItem(); + this.TrayDisconnect = new System.Windows.Forms.ToolStripMenuItem(); + this.saveLogToFileToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.aboutToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.exitToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.btnHide = new System.Windows.Forms.Button(); this.UIVersionLabel = new System.Windows.Forms.Label(); this.btnConnect = new System.Windows.Forms.Button(); this.btnDrop = new System.Windows.Forms.Button(); this.btnConfigProfile = new System.Windows.Forms.Button(); this.btnAbout = new System.Windows.Forms.Button(); - this.TrayMenu = new System.Windows.Forms.ContextMenuStrip(this.components); - this.TrayConnect = new System.Windows.Forms.ToolStripMenuItem(); - this.TrayDisconnect = new System.Windows.Forms.ToolStripMenuItem(); - this.saveLogToFileToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); - this.aboutToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); - this.exitToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); - this.showToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.TrayMenu.SuspendLayout(); this.SuspendLayout(); // @@ -86,6 +86,60 @@ this.NotificationTrayIcon.Visible = true; this.NotificationTrayIcon.MouseDoubleClick += new System.Windows.Forms.MouseEventHandler(this.NotificationTrayIcon_MouseDoubleClick); // + // TrayMenu + // + this.TrayMenu.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.showToolStripMenuItem, + this.TrayConnect, + this.TrayDisconnect, + this.saveLogToFileToolStripMenuItem, + this.aboutToolStripMenuItem, + this.exitToolStripMenuItem}); + this.TrayMenu.Name = "TrayMenu"; + this.TrayMenu.Size = new System.Drawing.Size(166, 136); + // + // showToolStripMenuItem + // + this.showToolStripMenuItem.Name = "showToolStripMenuItem"; + this.showToolStripMenuItem.Size = new System.Drawing.Size(165, 22); + this.showToolStripMenuItem.Text = "Show"; + this.showToolStripMenuItem.Click += new System.EventHandler(this.showToolStripMenuItem_Click); + // + // TrayConnect + // + this.TrayConnect.Name = "TrayConnect"; + this.TrayConnect.Size = new System.Drawing.Size(165, 22); + this.TrayConnect.Text = "Connect"; + this.TrayConnect.Click += new System.EventHandler(this.TrayConnect_Click); + // + // TrayDisconnect + // + this.TrayDisconnect.Name = "TrayDisconnect"; + this.TrayDisconnect.Size = new System.Drawing.Size(165, 22); + this.TrayDisconnect.Text = "Disconnect"; + this.TrayDisconnect.Click += new System.EventHandler(this.TrayDisconnect_Click); + // + // saveLogToFileToolStripMenuItem + // + this.saveLogToFileToolStripMenuItem.Name = "saveLogToFileToolStripMenuItem"; + this.saveLogToFileToolStripMenuItem.Size = new System.Drawing.Size(165, 22); + this.saveLogToFileToolStripMenuItem.Text = "Save Log to File..."; + this.saveLogToFileToolStripMenuItem.Click += new System.EventHandler(this.saveLogToFileToolStripMenuItem_Click); + // + // aboutToolStripMenuItem + // + this.aboutToolStripMenuItem.Name = "aboutToolStripMenuItem"; + this.aboutToolStripMenuItem.Size = new System.Drawing.Size(165, 22); + this.aboutToolStripMenuItem.Text = "About..."; + this.aboutToolStripMenuItem.Click += new System.EventHandler(this.aboutToolStripMenuItem_Click); + // + // exitToolStripMenuItem + // + this.exitToolStripMenuItem.Name = "exitToolStripMenuItem"; + this.exitToolStripMenuItem.Size = new System.Drawing.Size(165, 22); + this.exitToolStripMenuItem.Text = "Exit"; + this.exitToolStripMenuItem.Click += new System.EventHandler(this.exitToolStripMenuItem_Click); + // // btnHide // this.btnHide.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); @@ -152,60 +206,6 @@ this.btnAbout.UseVisualStyleBackColor = true; this.btnAbout.Click += new System.EventHandler(this.btnAbout_Click); // - // TrayMenu - // - this.TrayMenu.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { - this.showToolStripMenuItem, - this.TrayConnect, - this.TrayDisconnect, - this.saveLogToFileToolStripMenuItem, - this.aboutToolStripMenuItem, - this.exitToolStripMenuItem}); - this.TrayMenu.Name = "TrayMenu"; - this.TrayMenu.Size = new System.Drawing.Size(181, 158); - // - // TrayConnect - // - this.TrayConnect.Name = "TrayConnect"; - this.TrayConnect.Size = new System.Drawing.Size(180, 22); - this.TrayConnect.Text = "Connect"; - this.TrayConnect.Click += new System.EventHandler(this.TrayConnect_Click); - // - // TrayDisconnect - // - this.TrayDisconnect.Name = "TrayDisconnect"; - this.TrayDisconnect.Size = new System.Drawing.Size(180, 22); - this.TrayDisconnect.Text = "Disconnect"; - this.TrayDisconnect.Click += new System.EventHandler(this.TrayDisconnect_Click); - // - // saveLogToFileToolStripMenuItem - // - this.saveLogToFileToolStripMenuItem.Name = "saveLogToFileToolStripMenuItem"; - this.saveLogToFileToolStripMenuItem.Size = new System.Drawing.Size(180, 22); - this.saveLogToFileToolStripMenuItem.Text = "Save Log to File..."; - this.saveLogToFileToolStripMenuItem.Click += new System.EventHandler(this.saveLogToFileToolStripMenuItem_Click); - // - // aboutToolStripMenuItem - // - this.aboutToolStripMenuItem.Name = "aboutToolStripMenuItem"; - this.aboutToolStripMenuItem.Size = new System.Drawing.Size(180, 22); - this.aboutToolStripMenuItem.Text = "About..."; - this.aboutToolStripMenuItem.Click += new System.EventHandler(this.aboutToolStripMenuItem_Click); - // - // exitToolStripMenuItem - // - this.exitToolStripMenuItem.Name = "exitToolStripMenuItem"; - this.exitToolStripMenuItem.Size = new System.Drawing.Size(180, 22); - this.exitToolStripMenuItem.Text = "Exit"; - this.exitToolStripMenuItem.Click += new System.EventHandler(this.exitToolStripMenuItem_Click); - // - // showToolStripMenuItem - // - this.showToolStripMenuItem.Name = "showToolStripMenuItem"; - this.showToolStripMenuItem.Size = new System.Drawing.Size(180, 22); - this.showToolStripMenuItem.Text = "Show"; - this.showToolStripMenuItem.Click += new System.EventHandler(this.showToolStripMenuItem_Click); - // // main_frame // this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); @@ -223,7 +223,7 @@ this.Name = "main_frame"; this.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide; this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen; - this.Text = "LokiNET Launcher"; + this.Text = "Lokinet Launcher"; this.TrayMenu.ResumeLayout(false); this.ResumeLayout(false); this.PerformLayout(); diff --git a/ui-win32/UIMain.cs b/ui-win32/UIMain.cs index de20308ad..b35947888 100644 --- a/ui-win32/UIMain.cs +++ b/ui-win32/UIMain.cs @@ -31,7 +31,7 @@ namespace network.loki.lokinet.win32.ui .GetAssembly(typeof(main_frame)) .GetCustomAttributes(typeof(AssemblyInformationalVersionAttribute), false)[0]) .InformationalVersion; - UIVersionLabel.Text = String.Format("LokiNET version {0}", build); + UIVersionLabel.Text = String.Format("Lokinet version {0}", build); lokinetd_fd1.Text = string.Empty; logText = string.Empty; lokiNetDaemon.OutputDataReceived += new DataReceivedEventHandler((s, ev) => @@ -71,10 +71,10 @@ namespace network.loki.lokinet.win32.ui TrayConnect.Enabled = false; StatusLabel.Text = "Connected"; isConnected = true; - NotificationTrayIcon.Text = "LokiNET - connected"; + NotificationTrayIcon.Text = "Lokinet - connected"; btnDrop.Enabled = true; TrayDisconnect.Enabled = true; - NotificationTrayIcon.ShowBalloonTip(5, "LokiNET", "Connected to network.", ToolTipIcon.Info); + NotificationTrayIcon.ShowBalloonTip(5, "Lokinet", "Connected to network.", ToolTipIcon.Info); } private void btnDrop_Click(object sender, EventArgs e) @@ -86,11 +86,11 @@ namespace network.loki.lokinet.win32.ui btnDrop.Enabled = false; TrayDisconnect.Enabled = false; StatusLabel.Text = "Disconnected"; - NotificationTrayIcon.Text = "LokiNET - disconnected"; + NotificationTrayIcon.Text = "Lokinet - disconnected"; isConnected = false; logText = lokinetd_fd1.Text; lokinetd_fd1.Text = string.Empty; - NotificationTrayIcon.ShowBalloonTip(5, "LokiNET", "Disconnected from network.", ToolTipIcon.Info); + NotificationTrayIcon.ShowBalloonTip(5, "Lokinet", "Disconnected from network.", ToolTipIcon.Info); } @@ -106,9 +106,9 @@ namespace network.loki.lokinet.win32.ui { Hide(); if (isConnected) - NotificationTrayIcon.ShowBalloonTip(5, "LokiNET", "Currently connected.", ToolTipIcon.Info); + NotificationTrayIcon.ShowBalloonTip(5, "Lokinet", "Currently connected.", ToolTipIcon.Info); else - NotificationTrayIcon.ShowBalloonTip(5, "LokiNET", "Currently disconnected.", ToolTipIcon.Info); + NotificationTrayIcon.ShowBalloonTip(5, "Lokinet", "Currently disconnected.", ToolTipIcon.Info); } private void NotificationTrayIcon_MouseDoubleClick(object sender, MouseEventArgs e) @@ -143,7 +143,7 @@ namespace network.loki.lokinet.win32.ui ld.setText(logText); ld.CreateLog(config_path); - MessageBox.Show(string.Format("Wrote log to {0}, previous log rotated", ld.getLogPath()), "LokiNET", MessageBoxButtons.OK, MessageBoxIcon.Information); + MessageBox.Show(string.Format("Wrote log to {0}, previous log rotated", ld.getLogPath()), "Lokinet", MessageBoxButtons.OK, MessageBoxIcon.Information); logText = string.Empty; } } diff --git a/win32-setup/Makefile b/win32-setup/Makefile index d272d0dc1..8ad1632db 100644 --- a/win32-setup/Makefile +++ b/win32-setup/Makefile @@ -2,6 +2,8 @@ CC=i686-w64-mingw32-gcc CXX=i686-w64-mingw32-g++ +CC64=x86_64-w64-mingw32-gcc +CXX64=x86_64-w64-mingw32-g++ CFLAGS=-Ofast -march=nocona -mfpmath=sse LIBS=-lws2_32 LDFLAGS=-static @@ -11,13 +13,13 @@ default: all ifndef RELEASE regdbhelper.dll: - i686-w64-mingw32-gcc regdb_helper.c -o $@ -shared -Os -s + $(CC) regdb_helper.c -o $@ -shared -Os -s mbedtls: wget https://tls.mbed.org/download/mbedtls-2.16.3-apache.tgz tar xvf mbedtls-2.16.3-apache.tgz patch -p0 -d mbedtls-2.16.3 < mbedtls-win32.patch - $(MAKE) -j4 -C mbedtls-2.16.3/library CC=$(CC) CXX=$(CXX) CFLAGS="$(CFLAGS)" LDFLAGS=$(LIBS) + $(MAKE) -j48 -C mbedtls-2.16.3/library CC=$(CC) CXX=$(CXX) CFLAGS="$(CFLAGS)" LDFLAGS=$(LIBS) mkdir -p lib; mkdir -p include cp mbedtls-2.16.3/library/*.a lib cp -r mbedtls-2.16.3/include/mbedtls include @@ -26,11 +28,15 @@ curl: wget https://curl.haxx.se/download/curl-7.66.0.tar.xz tar xvf curl-7.66.0.tar.xz patch -p1 < curl-win32.patch - cd curl-7.66.0; ./configure --host=i686-w64-mingw32 --target=i686-w64-mingw32 CC=$(CC) CXX=$(CXX) CFLAGS="$(CFLAGS)" LIBS=$(LIBS) --disable-shared --without-zlib --without-ssl --with-mbedtls=$(PWD) --enable-optimize --enable-http --disable-ftp --disable-file --disable-ldap --disable-ldaps --disable-rtsp --enable-proxy --disable-dict --disable-telnet --disable-tftp --disable-pop3 --disable-imap --disable-smb --disable-smtp --disable-gopher --enable-manual - $(MAKE) -j4 -C curl-7.66.0 + cd curl-7.66.0; ./configure --host=i686-w64-mingw32 --target=i686-w64-mingw32 CC=$(CC) CXX=$(CXX) CFLAGS="$(CFLAGS)" LIBS=$(LIBS) --disable-shared --without-zlib --without-ssl --with-mbedtls=$(PWD) --enable-optimize --enable-http --disable-ftp --prefix=$(PWD) --disable-file --disable-ldap --disable-ldaps --disable-rtsp --enable-proxy --disable-dict --disable-telnet --disable-tftp --disable-pop3 --disable-imap --disable-smb --disable-smtp --disable-gopher --enable-manual + $(MAKE) -j48 -C curl-7.66.0 install + $(MAKE) -C curl-7.66.0 clean + cd curl-7.66.0; ./configure --host=x86_64-w64-mingw32 --target=x86_64-w64-mingw32 CC=$(CC64) CXX=$(CXX64) CFLAGS="$(CFLAGS)" LIBS=$(LIBS) --disable-shared --without-zlib --without-ssl --with-winssl --enable-optimize --enable-http --disable-ftp --prefix=$(PWD) --disable-file --disable-ldap --disable-ldaps --disable-rtsp --enable-proxy --disable-dict --disable-telnet --disable-tftp --disable-pop3 --disable-imap --disable-smb --disable-smtp --disable-gopher --enable-manual + $(MAKE) -j48 -C curl-7.66.0 + cp curl-7.66.0/lib/.libs/libcurl.a $(PWD)/lib64 lokinet-bootstrap.exe: mbedtls curl dbghelp - cp curl-7.66.0/src/curl.exe $@ + cp bin/curl.exe $@ wget -O rootcerts.pem https://curl.haxx.se/ca/cacert.pem cp ../LICENSE .;unix2dos LICENSE LICENSE diff --git a/win32-setup/lokinet-win32.iss b/win32-setup/lokinet-win32.iss index fe54749b9..091856b54 100644 --- a/win32-setup/lokinet-win32.iss +++ b/win32-setup/lokinet-win32.iss @@ -2,7 +2,7 @@ ; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES! #define MyAppName "Lokinet" -#define MyAppVersion "0.5.2" +#define MyAppVersion "0.6.0" #define MyAppPublisher "Loki Project" #define MyAppURL "https://lokinet.org" #define MyAppExeName "lokinetui.exe" @@ -38,18 +38,18 @@ OutputDir={#DevPath}win32-setup OutputBaseFilename=lokinet-win32 Compression=lzma2/ultra64 SolidCompression=yes -VersionInfoVersion=0.5.2 +VersionInfoVersion=0.6.0 VersionInfoCompany=Loki Project VersionInfoDescription=Lokinet for Microsoft® Windows® NT™ #ifndef RELEASE -VersionInfoTextVersion=0.5.2-dev-{#VCSRev} -VersionInfoProductTextVersion=0.5.2-dev-{#VCSRev} +VersionInfoTextVersion=0.6.0-dev-{#VCSRev} +VersionInfoProductTextVersion=0.6.0-dev-{#VCSRev} #else -VersionInfoTextVersion=0.5.2 -VersionInfoProductTextVersion=0.5.2 ({#Codename}) +VersionInfoTextVersion=0.6.0 +VersionInfoProductTextVersion=0.6.0 ({#Codename}) #endif VersionInfoProductName=Lokinet -VersionInfoProductVersion=0.5.2 +VersionInfoProductVersion=0.6.0 InternalCompressLevel=ultra64 MinVersion=0,5.0 ArchitecturesInstallIn64BitMode=x64 @@ -66,14 +66,15 @@ Name: "quicklaunchicon"; Description: "{cm:CreateQuickLaunchIcon}"; GroupDescrip ; only one of these is installed #ifdef SINGLE_ARCH Source: "{#DevPath}build\lokinet.exe"; DestDir: "{app}"; Flags: ignoreversion -Source: "{#DevPath}build\liblokinet-shared.dll"; DestDir: "{app}"; Flags: ignoreversion +; don't ship it, we don't have a public api yet! +;Source: "{#DevPath}build\liblokinet-shared.dll"; DestDir: "{app}"; Flags: ignoreversion Source: "dbghelp64.dll"; DestName: "dbghelp.dll"; DestDir: "{app}"; Flags: ignoreversion #else Source: "{#DevPath}build\lokinet.exe"; DestDir: "{app}"; Flags: ignoreversion 32bit; Check: not IsWin64 -Source: "{#DevPath}build\liblokinet-shared.dll"; DestDir: "{app}"; Flags: ignoreversion 32bit; Check: not IsWin64 +;Source: "{#DevPath}build\liblokinet-shared.dll"; DestDir: "{app}"; Flags: ignoreversion 32bit; Check: not IsWin64 Source: "dbghelp32.dll"; DestName: "dbghelp.dll"; DestDir: "{app}"; Flags: ignoreversion; Check: not IsWin64 Source: "{#DevPath}build64\lokinet.exe"; DestDir: "{app}"; Flags: ignoreversion 64bit; Check: IsWin64 -Source: "{#DevPath}build64\liblokinet-shared.dll"; DestDir: "{app}"; Flags: ignoreversion 64bit; Check: IsWin64 +;Source: "{#DevPath}build64\liblokinet-shared.dll"; DestDir: "{app}"; Flags: ignoreversion 64bit; Check: IsWin64 Source: "dbghelp64.dll"; DestDir: "{app}"; DestName: "dbghelp.dll"; Flags: ignoreversion; Check: IsWin64 #endif ; UI has landed! @@ -93,7 +94,6 @@ Source: "LICENSE"; DestDir: "{app}"; Flags: ignoreversion Source: "lokinet-bootstrap.exe"; DestDir: "{app}"; Flags: ignoreversion Source: "rootcerts.pem"; DestDir: "{app}"; Flags: ignoreversion Source: "7z.exe"; DestDir: "{tmp}"; Flags: deleteafterinstall -; if nonexistent, then inet6 was already installed Source: "inet6.7z"; DestDir: "{app}"; Flags: ignoreversion deleteafterinstall skipifsourcedoesntexist; MinVersion: 0,5.0; OnlyBelowVersion: 0,5.1; Check: not IsTcp6Installed ; Copy the correct tuntap driver for the selected platform Source: "tuntapv9.7z"; DestDir: "{app}"; Flags: ignoreversion deleteafterinstall; OnlyBelowVersion: 0, 6.0; Check: not IsTapInstalled @@ -143,7 +143,6 @@ Name: "{userappdata}\.lokinet" [Code] var TapInstalled: Boolean; -TCP6Installed: Boolean; Version: TWindowsVersion; function reg_query_helper(): Integer; external 'reg_query_helper@files:regdbhelper.dll cdecl setuponly'; @@ -165,7 +164,7 @@ end; function IsTcp6Installed(): Boolean; begin - if (FileExists(ExpandConstant('{sys}\drivers\tcpip6.sys')) = false) and (Version.Major = 5) and (Version.Minor = 0) then + if (FileExists(ExpandConstant('{sys}\drivers\tcpip6.sys')) = false) then begin Result := true; end