diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 84cbd599..8a9105dd 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -67,7 +67,7 @@ jobs: run: msbuild.exe build/msw/wx_vc14.sln /p:Configuration=Release /p:Platform=x64 /p:RuntimeLibrary=MultiThreaded - name: build TreeSheets run: | - msbuild.exe TreeSheets\treesheets.sln /p:Configuration=Release /p:Platform=x64 + msbuild.exe platforms\win32\treesheets.sln /p:Configuration=Release /p:Platform=x64 Remove-Item TS\*.pdb Remove-Item TS\*.ipdb Remove-Item TS\*.iobj @@ -109,9 +109,9 @@ jobs: - uses: actions/checkout@v4 - name: Prepare Plist run: | - /usr/libexec/PlistBuddy -c "Set :CFBundleVersion $(date +'%Y%m%d%H%M%S')" osx/Info.plist - /usr/libexec/PlistBuddy -c "Set :CFBundleShortVersionString $(date +'%Y.%m.%d')" osx/Info.plist - /usr/libexec/PlistBuddy -c "Set :LSMinimumSystemVersion $minmac" osx/Info.plist + /usr/libexec/PlistBuddy -c "Set :CFBundleVersion $(date +'%Y%m%d%H%M%S')" platforms/osx/Info.plist + /usr/libexec/PlistBuddy -c "Set :CFBundleShortVersionString $(date +'%Y.%m.%d')" platforms/osx/Info.plist + /usr/libexec/PlistBuddy -c "Set :LSMinimumSystemVersion $minmac" platforms/osx/Info.plist - name: cmake run: cmake -S . -B _build -DCMAKE_BUILD_TYPE=Release -DCMAKE_OSX_ARCHITECTURES="arm64;x86_64" -DCMAKE_OSX_DEPLOYMENT_TARGET="$minmac" -DCMAKE_INSTALL_PREFIX=macos-bundle - name: Build TreeSheets diff --git a/CMakeLists.txt b/CMakeLists.txt index 50eea1cd..f1553d41 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -103,12 +103,12 @@ if(APPLE) TreeSheets MACOSX_BUNDLE src/main.cpp - osx/App.icns + platforms/osx/App.icns ) - set_source_files_properties(osx/App.icns PROPERTIES + set_source_files_properties(platforms/osx/App.icns PROPERTIES MACOSX_PACKAGE_LOCATION "Resources") set_target_properties(TreeSheets PROPERTIES - MACOSX_BUNDLE_INFO_PLIST "${CMAKE_SOURCE_DIR}/osx/Info.plist" + MACOSX_BUNDLE_INFO_PLIST "${CMAKE_SOURCE_DIR}/platforms/osx/Info.plist" ) else() add_executable( @@ -154,9 +154,9 @@ if(LINUX AND NOT TREESHEETS_RELOCATABLE_INSTALLATION) target_compile_definitions(TreeSheets PRIVATE "TREESHEETS_DOCDIR=\"${TREESHEETS_FULL_DOCDIR}\"") target_compile_definitions(TreeSheets PRIVATE "TREESHEETS_DATADIR=\"${TREESHEETS_FULL_PKGDATADIR}\"") - install(FILES linux/com.strlen.TreeSheets.svg DESTINATION ${CMAKE_INSTALL_DATADIR}/icons/hicolor/scalable/apps) - install(FILES linux/com.strlen.TreeSheets.desktop DESTINATION ${CMAKE_INSTALL_DATADIR}/applications) - install(FILES linux/com.strlen.TreeSheets.xml DESTINATION ${CMAKE_INSTALL_DATADIR}/mime/packages) + install(FILES platforms/linux/com.strlen.TreeSheets.svg DESTINATION ${CMAKE_INSTALL_DATADIR}/icons/hicolor/scalable/apps) + install(FILES platforms/linux/com.strlen.TreeSheets.desktop DESTINATION ${CMAKE_INSTALL_DATADIR}/applications) + install(FILES platforms/linux/com.strlen.TreeSheets.xml DESTINATION ${CMAKE_INSTALL_DATADIR}/mime/packages) elseif(APPLE) set(TREESHEETS_BINDIR ${CMAKE_INSTALL_PREFIX}) set(TREESHEETS_DOCDIR ${CMAKE_INSTALL_PREFIX}/TreeSheets.app/Contents/Resources) diff --git a/README.md b/README.md index 2ae7f2cc..35483128 100755 --- a/README.md +++ b/README.md @@ -72,7 +72,7 @@ Windows: to Multithreaded 4. Build solution in both x64 Debug and Release 5. Close the wxWidgets solution -6. "treesheets" contains the Visual Studio 2022 files for treesheets, open the .sln. +6. `platforms/win32` contains the Visual Studio 2022 files for treesheets, open the .sln. If you've done the above correctly, TreeSheets will now compile and pick up the wxWidgets libraries. 7. To distribute, build an installer with `TS_installer.nsi` (requires nsis.sourceforge.net) diff --git a/linux/com.strlen.TreeSheets.desktop b/platforms/linux/com.strlen.TreeSheets.desktop similarity index 100% rename from linux/com.strlen.TreeSheets.desktop rename to platforms/linux/com.strlen.TreeSheets.desktop diff --git a/linux/com.strlen.TreeSheets.svg b/platforms/linux/com.strlen.TreeSheets.svg similarity index 100% rename from linux/com.strlen.TreeSheets.svg rename to platforms/linux/com.strlen.TreeSheets.svg diff --git a/linux/com.strlen.TreeSheets.xml b/platforms/linux/com.strlen.TreeSheets.xml similarity index 100% rename from linux/com.strlen.TreeSheets.xml rename to platforms/linux/com.strlen.TreeSheets.xml diff --git a/osx/App.icns b/platforms/osx/App.icns similarity index 100% rename from osx/App.icns rename to platforms/osx/App.icns diff --git a/osx/Info.plist b/platforms/osx/Info.plist similarity index 100% rename from osx/Info.plist rename to platforms/osx/Info.plist diff --git a/treesheets/boar.aps b/platforms/win32/boar.aps similarity index 100% rename from treesheets/boar.aps rename to platforms/win32/boar.aps diff --git a/treesheets/boar.rc b/platforms/win32/boar.rc similarity index 100% rename from treesheets/boar.rc rename to platforms/win32/boar.rc diff --git a/treesheets/dot3inst.bmp b/platforms/win32/dot3inst.bmp similarity index 100% rename from treesheets/dot3inst.bmp rename to platforms/win32/dot3inst.bmp diff --git a/treesheets/icon1.ico b/platforms/win32/icon1.ico similarity index 100% rename from treesheets/icon1.ico rename to platforms/win32/icon1.ico diff --git a/treesheets/resource.h b/platforms/win32/resource.h similarity index 100% rename from treesheets/resource.h rename to platforms/win32/resource.h diff --git a/treesheets/treesheets-16x16.png b/platforms/win32/treesheets-16x16.png similarity index 100% rename from treesheets/treesheets-16x16.png rename to platforms/win32/treesheets-16x16.png diff --git a/treesheets/treesheets-32x32.png b/platforms/win32/treesheets-32x32.png similarity index 100% rename from treesheets/treesheets-32x32.png rename to platforms/win32/treesheets-32x32.png diff --git a/treesheets/treesheets.sln b/platforms/win32/treesheets.sln similarity index 94% rename from treesheets/treesheets.sln rename to platforms/win32/treesheets.sln index 7a113554..97ca409c 100644 --- a/treesheets/treesheets.sln +++ b/platforms/win32/treesheets.sln @@ -8,7 +8,7 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "treesheets", "treesheets.vc {2C576764-3A5A-4CCD-B50D-C7C9C0349282} = {2C576764-3A5A-4CCD-B50D-C7C9C0349282} EndProjectSection EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "language", "..\lobster\lobster\language.vcxproj", "{2C576764-3A5A-4CCD-B50D-C7C9C0349282}" +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "language", "..\..\lobster\lobster\language.vcxproj", "{2C576764-3A5A-4CCD-B50D-C7C9C0349282}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution diff --git a/treesheets/treesheets.vcxproj b/platforms/win32/treesheets.vcxproj similarity index 74% rename from treesheets/treesheets.vcxproj rename to platforms/win32/treesheets.vcxproj index 79b6460e..8b3c22fd 100644 --- a/treesheets/treesheets.vcxproj +++ b/platforms/win32/treesheets.vcxproj @@ -49,15 +49,15 @@ TreeSheetsDBG - ..\TS\ + ..\..\TS\ - ..\TS\ + ..\..\TS\ Disabled - ..\wxWidgets\include;..\wxWidgets\lib\vc_x64_lib\mswud;%(AdditionalIncludeDirectories) + ..\..\wxWidgets\include;..\..\wxWidgets\lib\vc_x64_lib\mswud;%(AdditionalIncludeDirectories) WINVER=0x0400;wxUSE_GUI=1;__WXDEBUG__;%(PreprocessorDefinitions) EnableFastChecks MultiThreadedDebug @@ -73,9 +73,9 @@ C:\Program Files\wxWidgets-2.8.8\include\;C:\Program Files\wxWidgets-2.8.8\lib\vc_lib\mswd;%(AdditionalIncludeDirectories) - ../build/treesheets/language/languageDBG64.lib;libcmtd.lib;libcpmtd.lib;comctl32.lib;rpcrt4.lib;winmm.lib;advapi32.lib;wsock32.lib;wxmsw33ud_core.lib;wxbase33ud.lib;wxmsw33ud_adv.lib;wxpngd.lib;wxzlibd.lib;wxjpegd.lib;wxtiffd.lib;wxbase33ud_xml.lib;wxexpatd.lib;wxmsw33ud_aui.lib;%(AdditionalDependencies) - ..\TS\TreeSheetsDBG.exe - ..\wxWidgets\lib\vc_x64_lib\;%(AdditionalLibraryDirectories) + ../../build/treesheets/language/languageDBG64.lib;libcmtd.lib;libcpmtd.lib;comctl32.lib;rpcrt4.lib;winmm.lib;advapi32.lib;wsock32.lib;wxmsw33ud_core.lib;wxbase33ud.lib;wxmsw33ud_adv.lib;wxpngd.lib;wxzlibd.lib;wxjpegd.lib;wxtiffd.lib;wxbase33ud_xml.lib;wxexpatd.lib;wxmsw33ud_aui.lib;%(AdditionalDependencies) + ..\..\TS\TreeSheetsDBG.exe + ..\..\wxWidgets\lib\vc_x64_lib\;%(AdditionalLibraryDirectories) false true Windows @@ -87,7 +87,7 @@ false - ..\wxWidgets\include;..\wxWidgets\lib\vc_x64_lib\mswu;%(AdditionalIncludeDirectories) + ..\..\wxWidgets\include;..\..\wxWidgets\lib\vc_x64_lib\mswu;%(AdditionalIncludeDirectories) NDEBUG;WINVER=0x0400;wxUSE_GUI=1;%(PreprocessorDefinitions) MultiThreaded @@ -102,9 +102,9 @@ C:\Program Files\wxWidgets-2.8.8\include\;C:\Program Files\wxWidgets-2.8.8\lib\vc_lib\msw;%(AdditionalIncludeDirectories) - ../build/treesheets/language/language64.lib;libcmt.lib;libcpmt.lib;comctl32.lib;rpcrt4.lib;winmm.lib;advapi32.lib;wsock32.lib;wxmsw33u_core.lib;wxbase33u.lib;wxmsw33u_adv.lib;wxpng.lib;wxzlib.lib;wxjpeg.lib;wxtiff.lib;wxbase33u_xml.lib;wxexpat.lib;wxmsw33u_aui.lib;%(AdditionalDependencies) - ..\TS\TreeSheets.exe - ..\wxWidgets\lib\vc_x64_lib\;%(AdditionalLibraryDirectories) + ../../build/treesheets/language/language64.lib;libcmt.lib;libcpmt.lib;comctl32.lib;rpcrt4.lib;winmm.lib;advapi32.lib;wsock32.lib;wxmsw33u_core.lib;wxbase33u.lib;wxmsw33u_adv.lib;wxpng.lib;wxzlib.lib;wxjpeg.lib;wxtiff.lib;wxbase33u_xml.lib;wxexpat.lib;wxmsw33u_aui.lib;%(AdditionalDependencies) + ..\..\TS\TreeSheets.exe + ..\..\wxWidgets\lib\vc_x64_lib\;%(AdditionalLibraryDirectories) false %(IgnoreSpecificDefaultLibraries) true @@ -118,64 +118,64 @@ - + NotUsing NotUsing - ..\lobster\src;..\lobster\include - ..\lobster\src;..\lobster\include + ..\..\lobster\src;..\..\lobster\include + ..\..\lobster\src;..\..\lobster\include ignore.h ignore.h false NDEBUG;WINVER=0x0400;wxUSE_GUI=1;%(PreprocessorDefinitions) - + Use Use - ..\lobster\src - ..\lobster\src + ..\..\lobster\src + ..\..\lobster\src NDEBUG;WINVER=0x0400;wxUSE_GUI=1;%(PreprocessorDefinitions) - + TurnOffAllWarnings TurnOffAllWarnings NDEBUG;WINVER=0x0400;wxUSE_GUI=1;%(PreprocessorDefinitions) - + TurnOffAllWarnings TurnOffAllWarnings NDEBUG;WINVER=0x0400;wxUSE_GUI=1;%(PreprocessorDefinitions) - + Create Create NDEBUG;WINVER=0x0400;wxUSE_GUI=1;%(PreprocessorDefinitions) - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + - - + + diff --git a/treesheets/treesheets.vcxproj.filters b/platforms/win32/treesheets.vcxproj.filters similarity index 66% rename from treesheets/treesheets.vcxproj.filters rename to platforms/win32/treesheets.vcxproj.filters index f3d324ba..13f7fea6 100644 --- a/treesheets/treesheets.vcxproj.filters +++ b/platforms/win32/treesheets.vcxproj.filters @@ -21,76 +21,76 @@ - + std - + std - + std\StackWalker - + std\StackWalker - + script - + std - + std - + treesheets - + treesheets - + treesheets - + treesheets - + treesheets - + treesheets - + treesheets - + wxwidgets - + wxwidgets - + wxwidgets - + wxwidgets - + wxwidgets - + std\StackWalker - + std\StackWalker - + script - + script @@ -99,7 +99,7 @@ data - + diff --git a/treesheets/treesheets.vcxproj.user b/platforms/win32/treesheets.vcxproj.user similarity index 100% rename from treesheets/treesheets.vcxproj.user rename to platforms/win32/treesheets.vcxproj.user diff --git a/treesheets/tsinst.bmp b/platforms/win32/tsinst.bmp similarity index 100% rename from treesheets/tsinst.bmp rename to platforms/win32/tsinst.bmp