Skip to content

Commit 9a7093f

Browse files
committed
- added arm64 build
- gh action update check - added gh mingw build
1 parent e973fcc commit 9a7093f

File tree

6 files changed

+156
-4
lines changed

6 files changed

+156
-4
lines changed

.github/dependabot.yml

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
# To get started with Dependabot version updates, you'll need to specify which
2+
# package ecosystems to update and where the package manifests are located.
3+
# Please see the documentation for all configuration options:
4+
# https://help.github.com/github/administering-a-repository/configuration-options-for-dependency-updates
5+
6+
version: 2
7+
updates:
8+
# Maintain dependencies for GitHub Actions
9+
- package-ecosystem: "github-actions"
10+
directory: "/"
11+
schedule:
12+
interval: "weekly"

.github/workflows/mingw-build.yml

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
name: Mingw Build
2+
3+
on: [ push, pull_request ]
4+
5+
jobs:
6+
7+
build_linux:
8+
runs-on: ubuntu-latest
9+
strategy:
10+
max-parallel: 2
11+
matrix:
12+
build_platform: ["64", "32"]
13+
14+
steps:
15+
- name: Checkout repository
16+
uses: actions/checkout@v2
17+
with:
18+
fetch-depth: 0
19+
20+
- name: Install packages via apt
21+
run: |
22+
sudo apt-get -qq update
23+
sudo apt-get -qq install -y mingw-w64 cppcheck
24+
(for alt in i686-w64-mingw32-g++ i686-w64-mingw32-gcc x86_64-w64-mingw32-g++ x86_64-w64-mingw32-gcc; do sudo update-alternatives --set $alt /usr/bin/$alt-posix; done);
25+
26+
- name: build x86
27+
if: matrix.build_platform == '32'
28+
run: make ARCH=i686-w64-mingw32
29+
30+
- name: build x64
31+
if: matrix.build_platform == '64'
32+
run: make ARCH=x86_64-w64-mingw32
33+
34+
- name: Archive artifacts for x86
35+
if: matrix.build_platform == '32'
36+
uses: actions/upload-artifact@v2
37+
with:
38+
name: nppsnippets_dll_linux_x32
39+
path: NppSnippets.dll
40+
41+
- name: Archive artifacts for x64
42+
if: matrix.build_platform == '64'
43+
uses: actions/upload-artifact@v2
44+
with:
45+
name: nppsnippets_dll_linux_x64
46+
path: NppSnippets.dll
47+

.github/workflows/msbuild.yml

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,13 @@ on: [ push, pull_request ]
44

55
jobs:
66

7-
build:
7+
build_windows:
88
runs-on: windows-latest
99
strategy:
10-
max-parallel: 4
10+
max-parallel: 3
1111
matrix:
1212
build_configuration: [ Release ]
13-
build_platform: [ x64, Win32 ]
13+
build_platform: [ x64, Win32, ARM64 ]
1414
steps:
1515
- name: Checkout repository
1616
uses: actions/checkout@v2
@@ -39,3 +39,10 @@ jobs:
3939
with:
4040
name: nppsnippets_dll_x32
4141
path: ${{ matrix.build_platform }}/${{ matrix.build_configuration }}/NppSnippets.dll
42+
43+
- name: Archive artifacts for ARM64
44+
if: matrix.build_platform == 'ARM64'
45+
uses: actions/upload-artifact@v2
46+
with:
47+
name: nppsnippets_dll_arm64
48+
path: ${{ matrix.build_platform }}/${{ matrix.build_configuration }}/NppSnippets.dll

Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ all: clean now
2222
CFLAGS = -DUNICODE
2323
CXXFLAGS = $(CFLAGS) -Wno-write-strings --std=c++11
2424
LIBS = -static -lshlwapi -lgdi32 -lcomdlg32 -lcomctl32
25-
LDFLAGS = -Wl,--out-implib,$(TARGET) -shared
25+
LDFLAGS = -shared -Wl,--dll
2626

2727
# Default target is RELEASE, otherwise DEBUG=1
2828
DEBUG ?= 0

NppSnippets.sln

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,16 +14,22 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Files", "Solution
1414
EndProject
1515
Global
1616
GlobalSection(SolutionConfigurationPlatforms) = preSolution
17+
Debug|ARM64 = Debug|ARM64
1718
Debug|Win32 = Debug|Win32
1819
Debug|x64 = Debug|x64
20+
Release|ARM64 = Release|ARM64
1921
Release|Win32 = Release|Win32
2022
Release|x64 = Release|x64
2123
EndGlobalSection
2224
GlobalSection(ProjectConfigurationPlatforms) = postSolution
25+
{1590D7CD-7D3A-4AB7-A355-EE02F7FB987D}.Debug|ARM64.ActiveCfg = Debug|ARM64
26+
{1590D7CD-7D3A-4AB7-A355-EE02F7FB987D}.Debug|ARM64.Build.0 = Debug|ARM64
2327
{1590D7CD-7D3A-4AB7-A355-EE02F7FB987D}.Debug|Win32.ActiveCfg = Debug|Win32
2428
{1590D7CD-7D3A-4AB7-A355-EE02F7FB987D}.Debug|Win32.Build.0 = Debug|Win32
2529
{1590D7CD-7D3A-4AB7-A355-EE02F7FB987D}.Debug|x64.ActiveCfg = Debug|x64
2630
{1590D7CD-7D3A-4AB7-A355-EE02F7FB987D}.Debug|x64.Build.0 = Debug|x64
31+
{1590D7CD-7D3A-4AB7-A355-EE02F7FB987D}.Release|ARM64.ActiveCfg = Release|ARM64
32+
{1590D7CD-7D3A-4AB7-A355-EE02F7FB987D}.Release|ARM64.Build.0 = Release|ARM64
2733
{1590D7CD-7D3A-4AB7-A355-EE02F7FB987D}.Release|Win32.ActiveCfg = Release|Win32
2834
{1590D7CD-7D3A-4AB7-A355-EE02F7FB987D}.Release|Win32.Build.0 = Release|Win32
2935
{1590D7CD-7D3A-4AB7-A355-EE02F7FB987D}.Release|x64.ActiveCfg = Release|x64

NppSnippets.vcxproj

Lines changed: 80 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,10 @@
11
<?xml version="1.0" encoding="utf-8"?>
22
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
33
<ItemGroup Label="ProjectConfigurations">
4+
<ProjectConfiguration Include="Debug|ARM64">
5+
<Configuration>Debug</Configuration>
6+
<Platform>ARM64</Platform>
7+
</ProjectConfiguration>
48
<ProjectConfiguration Include="Debug|Win32">
59
<Configuration>Debug</Configuration>
610
<Platform>Win32</Platform>
@@ -9,6 +13,10 @@
913
<Configuration>Debug</Configuration>
1014
<Platform>x64</Platform>
1115
</ProjectConfiguration>
16+
<ProjectConfiguration Include="Release|ARM64">
17+
<Configuration>Release</Configuration>
18+
<Platform>ARM64</Platform>
19+
</ProjectConfiguration>
1220
<ProjectConfiguration Include="Release|Win32">
1321
<Configuration>Release</Configuration>
1422
<Platform>Win32</Platform>
@@ -36,6 +44,11 @@
3644
<CharacterSet>Unicode</CharacterSet>
3745
<PlatformToolset>v142</PlatformToolset>
3846
</PropertyGroup>
47+
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'" Label="Configuration">
48+
<ConfigurationType>DynamicLibrary</ConfigurationType>
49+
<CharacterSet>Unicode</CharacterSet>
50+
<PlatformToolset>v142</PlatformToolset>
51+
</PropertyGroup>
3952
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
4053
<ConfigurationType>DynamicLibrary</ConfigurationType>
4154
<CharacterSet>Unicode</CharacterSet>
@@ -46,6 +59,11 @@
4659
<CharacterSet>Unicode</CharacterSet>
4760
<PlatformToolset>v142</PlatformToolset>
4861
</PropertyGroup>
62+
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'" Label="Configuration">
63+
<ConfigurationType>DynamicLibrary</ConfigurationType>
64+
<CharacterSet>Unicode</CharacterSet>
65+
<PlatformToolset>v142</PlatformToolset>
66+
</PropertyGroup>
4967
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
5068
<ImportGroup Label="ExtensionSettings">
5169
</ImportGroup>
@@ -57,6 +75,10 @@
5775
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
5876
<Import Project="NPP/no_ms_shit.props" />
5977
</ImportGroup>
78+
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'" Label="PropertySheets">
79+
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
80+
<Import Project="NPP/no_ms_shit.props" />
81+
</ImportGroup>
6082
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
6183
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
6284
<Import Project="NPP/no_ms_shit.props" />
@@ -65,29 +87,41 @@
6587
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
6688
<Import Project="NPP/no_ms_shit.props" />
6789
</ImportGroup>
90+
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'" Label="PropertySheets">
91+
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
92+
<Import Project="NPP/no_ms_shit.props" />
93+
</ImportGroup>
6894
<PropertyGroup Label="UserMacros" />
6995
<PropertyGroup>
7096
<_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
7197
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)$(Platform)\$(Configuration)\</OutDir>
7298
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Platform)\$(Configuration)\</IntDir>
7399
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
74100
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
101+
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">false</LinkIncremental>
75102
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)$(Platform)\$(Configuration)\</OutDir>
76103
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Platform)\$(Configuration)\</IntDir>
77104
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
78105
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
106+
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">true</LinkIncremental>
79107
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
80108
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
109+
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">AllRules.ruleset</CodeAnalysisRuleSet>
81110
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
82111
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
112+
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'" />
83113
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
84114
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
115+
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'" />
85116
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
86117
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
118+
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">AllRules.ruleset</CodeAnalysisRuleSet>
87119
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
88120
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
121+
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'" />
89122
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
90123
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
124+
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'" />
91125
</PropertyGroup>
92126
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
93127
<ClCompile>
@@ -138,6 +172,30 @@
138172
<Command>call $(SolutionDir)version_git.bat</Command>
139173
</PreBuildEvent>
140174
</ItemDefinitionGroup>
175+
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">
176+
<ClCompile>
177+
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;NPPSNIPPETS_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
178+
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
179+
<PrecompiledHeader>
180+
</PrecompiledHeader>
181+
<PrecompiledHeaderFile>
182+
</PrecompiledHeaderFile>
183+
<WarningLevel>Level4</WarningLevel>
184+
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
185+
</ClCompile>
186+
<Link>
187+
<AdditionalDependencies>shlwapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
188+
<OutputFile>$(OutDir)NppSnippets.dll</OutputFile>
189+
<GenerateDebugInformation>true</GenerateDebugInformation>
190+
<SubSystem>Windows</SubSystem>
191+
<OptimizeReferences>true</OptimizeReferences>
192+
<EnableCOMDATFolding>true</EnableCOMDATFolding>
193+
<ImportLibrary>$(OutDir)NppSnippets.lib</ImportLibrary>
194+
</Link>
195+
<PreBuildEvent>
196+
<Command>call $(SolutionDir)version_git.bat</Command>
197+
</PreBuildEvent>
198+
</ItemDefinitionGroup>
141199
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
142200
<ClCompile>
143201
<Optimization>Disabled</Optimization>
@@ -183,6 +241,28 @@
183241
<Command>call $(SolutionDir)version_git.bat</Command>
184242
</PreBuildEvent>
185243
</ItemDefinitionGroup>
244+
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">
245+
<ClCompile>
246+
<Optimization>Disabled</Optimization>
247+
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;NPPSNIPPETS_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
248+
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
249+
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
250+
<PrecompiledHeader>
251+
</PrecompiledHeader>
252+
<WarningLevel>Level4</WarningLevel>
253+
</ClCompile>
254+
<Link>
255+
<AdditionalDependencies>shlwapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
256+
<OutputFile>$(OutDir)NppSnippets.dll</OutputFile>
257+
<GenerateDebugInformation>true</GenerateDebugInformation>
258+
<ProgramDatabaseFile>$(OutDir)NppSnippets.pdb</ProgramDatabaseFile>
259+
<SubSystem>Windows</SubSystem>
260+
<ImportLibrary>$(OutDir)NppSnippets.lib</ImportLibrary>
261+
</Link>
262+
<PreBuildEvent>
263+
<Command>call $(SolutionDir)version_git.bat</Command>
264+
</PreBuildEvent>
265+
</ItemDefinitionGroup>
186266
<ItemGroup>
187267
<ClCompile Include="DlgAbout.cpp" />
188268
<ClCompile Include="DlgConsole.cpp" />

0 commit comments

Comments
 (0)