Skip to content

Commit 2935000

Browse files
committed
* Initial commit
0 parents  commit 2935000

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

74 files changed

+6916
-0
lines changed

.gitignore

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
.build-win32-debug/
2+
.build-win32-release/
3+
.build-win64-debug/
4+
.build-win64-release/
5+
.codelite/
6+
bin/
7+
build/
8+
dist/Win32/
9+
dist/Win64/
10+
dist/*.exe
11+
dist/*.zip
12+
all.mk
13+
all.txt
14+
base.mk
15+
base.txt
16+
core.mk
17+
core.txt
18+
ex.err
19+
Makefile

README.md

Lines changed: 86 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,86 @@
1+
# wxEuphoria "Project Leviathan"
2+
3+
**Version 3.1.0 alpha 1**
4+
5+
wxEuphoria provides bindings for [wxWidgets](https://www.wxwidgets.org/) in Euphoria. This project is an *all new library* written from the ground up to supercede the previous version at [SourceForge.net](http://wxeuphoria.sourceforge.net/). Such an effort is not without its challenges of course. For one thing, this library is *completely* incompatible with the original, but the new design makes developing with and for wxEuphoria easier than ever before. We also plan to keep this version up to date with wxWidgets as new releases are made available upstream.
6+
7+
## Our Goals
8+
9+
### Take it easy
10+
11+
wxEuphoria is easier to use and learn than ever before. The new wrapper code follows a near one-to-one commitment to the original wxWidgets classes. Most wxWidgets applications written in C++ can be ported to Euphoria with almost no changes to the application structure. Our documentation also follows the original wxWidgets structure very closely.
12+
13+
### Build it better
14+
15+
We provide binary distributions of the required libraries with wxWidgets baked right in. No more external third-party libraries to compile or distribute. You don't need to know C++ or ever run `./configure` or `make` to use wxEuphoria. You'll only have to distribute the binary files you actually need, which makes packaging easier and smaller.
16+
17+
### Learn the hard way
18+
19+
Truth be told, programming in general is not easy and we don't expect to be. We make every effort to document thoroughly and clearly and to provide example code whenever possible. But in the end, wxWidgets is a large, complex assortment of functions and features, so it may take some time to really understand it all. Just because wxEuphoria is *easier* to use doesn't mean it's ever been *easy* to use.
20+
21+
### Get the help you need
22+
23+
- For general questions and discussion, please create a new topic on the [OpenEuphoria Forum](http://openeuphoria.org/forum/).
24+
- For support issues and feature requests, please create a new issue on this [project page](https://github.com/ghaberek/wxEuphoria/issues/).
25+
26+
## Status
27+
28+
- [x] The library builds and runs on Windows 32-bit and 64-bit.
29+
- [x] Just a few base and core classes are wrapped and working.
30+
- [ ] No support for Linux (*coming soon!*) or Mac OS X (*maybe?*).
31+
- [ ] No documentation yet. Still trying to figure out what to use.
32+
33+
## Requirements
34+
35+
To use the binaries:
36+
- [OpenEuphoria 4.1.0 Beta 2](https://sourceforge.net/projects/rapideuphoria/files/Euphoria/4.1.0-beta2/) or later
37+
38+
To build from source:
39+
- [CodeLite 9.2.0](https://codelite.org/) or later
40+
- [TDM-GCC 5.1.0](http://tdm-gcc.tdragon.net/) or later
41+
- [wxWidgets 3.1.0](http://www.wxwidgets.org/) or later
42+
- [InnoSetup 5.5.0](http://www.jrsoftware.org/) or later
43+
44+
## FAQ
45+
46+
### What's up with that project name?
47+
48+
This is inspired by the [wxPython](https://www.wxpython.org/)'s *[Project Phoenix](https://wiki.wxpython.org/ProjectPhoenix)*. The name is [synonymous](https://www.google.com/search?q=define%3Aleviathan) with *a thing that is very large or powerful* and the word evokes the sense of overwhelming effort and danger involved with the attempt tackle a project of this scale.
49+
50+
### Why not update and extend the old library?
51+
52+
Matthew Lewis, the original author of wxEuphoria, did a great job on that library and we owe him a great deal of credit for his efforts. The very core of this new library is still based on his code. However, as time has moved on, the old library fell further behind the release of wxWidgets, which made it difficult to bring into the modern age. We used this as an opportunity to bring the whole thing up to date with modern tools.
53+
54+
### Can I use this with Euphoria 3.1.x or 4.0.x?
55+
56+
No. This is not supported. Please do not try to do this. Bad things will happen.
57+
58+
## History
59+
60+
### January 14, 2017
61+
62+
- Posted project to GitHub.
63+
64+
### January 8, 2017
65+
66+
- Added `check.ex` for basic sanity checking.
67+
68+
### January 2, 2017
69+
70+
- Added `newclass.cmd` for quick deployment of wrappers.
71+
- Added multiple command scripts for spawning test shells.
72+
- `debug32.cmd`
73+
- `debug64.cmd`
74+
- `release32.cmd`
75+
- `release64.cmd`
76+
77+
### December 26, 2016
78+
79+
- A simple GUI application can be created.
80+
- Event handling seems to work correctly.
81+
82+
### December 17, 2016
83+
84+
- Development begins on wxEuphoria.
85+
- Base and core libraries compile and link.
86+

all.project

Lines changed: 223 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,223 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<CodeLite_Project Name="all" InternalType="Library" Version="10.0.0">
3+
<Plugins>
4+
<Plugin Name="qmake">
5+
<![CDATA[00040001N0011Win32-Debug0000000000000001N0013Win32-Release0000000000000001N0011Win64-Debug0000000000000001N0013Win64-Release000000000000]]>
6+
</Plugin>
7+
<Plugin Name="CMakePlugin">
8+
<![CDATA[[{
9+
"name": "Debug",
10+
"enabled": false,
11+
"buildDirectory": "build",
12+
"sourceDirectory": "$(ProjectPath)",
13+
"generator": "",
14+
"buildType": "",
15+
"arguments": [],
16+
"parentProject": ""
17+
}, {
18+
"name": "Win32-Debug",
19+
"enabled": false,
20+
"buildDirectory": "build",
21+
"sourceDirectory": "$(ProjectPath)",
22+
"generator": "",
23+
"buildType": "",
24+
"arguments": [],
25+
"parentProject": ""
26+
}, {
27+
"name": "Win32-Release",
28+
"enabled": false,
29+
"buildDirectory": "build",
30+
"sourceDirectory": "$(ProjectPath)",
31+
"generator": "",
32+
"buildType": "",
33+
"arguments": [],
34+
"parentProject": ""
35+
}]]]>
36+
</Plugin>
37+
</Plugins>
38+
<Description/>
39+
<Dependencies/>
40+
<Dependencies Name="Win32-Debug">
41+
<Project Name="base"/>
42+
<Project Name="core"/>
43+
</Dependencies>
44+
<Dependencies Name="Win32-Release">
45+
<Project Name="base"/>
46+
<Project Name="core"/>
47+
</Dependencies>
48+
<Dependencies Name="Win64-Debug">
49+
<Project Name="base"/>
50+
<Project Name="core"/>
51+
</Dependencies>
52+
<Dependencies Name="Win64-Release">
53+
<Project Name="base"/>
54+
<Project Name="core"/>
55+
</Dependencies>
56+
<Settings Type="Executable">
57+
<GlobalSettings>
58+
<Compiler Options="" C_Options="" Assembler="">
59+
<IncludePath Value="."/>
60+
</Compiler>
61+
<Linker Options="">
62+
<LibraryPath Value="."/>
63+
</Linker>
64+
<ResourceCompiler Options=""/>
65+
</GlobalSettings>
66+
<Configuration Name="Win32-Debug" CompilerType="MinGW ( TDM-GCC-32 )" DebuggerType="GNU gdb debugger" Type="Executable" BuildCmpWithGlobalSettings="append" BuildLnkWithGlobalSettings="append" BuildResWithGlobalSettings="append">
67+
<Compiler Options="-g;$(shell wx-config --cxxflags --debug=yes --unicode=yes)" C_Options="-g;$(shell wx-config --cxxflags --debug=yes --unicode=yes)" Assembler="" Required="no" PreCompiledHeader="" PCHInCommandLine="no" PCHFlags="" PCHFlagsPolicy="0">
68+
<IncludePath Value="."/>
69+
</Compiler>
70+
<Linker Options="$(shell wx-config --debug=yes --libs --unicode=yes)" Required="no"/>
71+
<ResourceCompiler Options="" Required="no"/>
72+
<General OutputFile="" IntermediateDirectory="./build/$(ProjectName)/$(ConfigurationName)" Command="" CommandArguments="" UseSeparateDebugArgs="no" DebugArguments="" WorkingDirectory="" PauseExecWhenProcTerminates="no" IsGUIProgram="no" IsEnabled="yes"/>
73+
<BuildSystem Name="Default"/>
74+
<Environment EnvVarSetName="wxWidgets-3.1.0 (32-bit)" DbgSetName="&lt;Use Defaults&gt;">
75+
<![CDATA[WXCFG=gcc_lib\mswud]]>
76+
</Environment>
77+
<Debugger IsRemote="no" RemoteHostName="" RemoteHostPort="" DebuggerPath="" IsExtended="no">
78+
<DebuggerSearchPaths/>
79+
<PostConnectCommands/>
80+
<StartupCommands/>
81+
</Debugger>
82+
<PreBuild/>
83+
<PostBuild/>
84+
<CustomBuild Enabled="no">
85+
<RebuildCommand/>
86+
<CleanCommand/>
87+
<BuildCommand/>
88+
<PreprocessFileCommand/>
89+
<SingleFileCommand/>
90+
<MakefileGenerationCommand/>
91+
<ThirdPartyToolName>None</ThirdPartyToolName>
92+
<WorkingDirectory/>
93+
</CustomBuild>
94+
<AdditionalRules>
95+
<CustomPostBuild/>
96+
<CustomPreBuild/>
97+
</AdditionalRules>
98+
<Completion EnableCpp11="no" EnableCpp14="no">
99+
<ClangCmpFlagsC/>
100+
<ClangCmpFlags/>
101+
<ClangPP/>
102+
<SearchPaths/>
103+
</Completion>
104+
</Configuration>
105+
<Configuration Name="Win32-Release" CompilerType="MinGW ( TDM-GCC-32 )" DebuggerType="GNU gdb debugger" Type="Executable" BuildCmpWithGlobalSettings="append" BuildLnkWithGlobalSettings="append" BuildResWithGlobalSettings="append">
106+
<Compiler Options="-O2;$(shell wx-config --cxxflags --debug=no --unicode=yes)" C_Options="-O2;$(shell wx-config --cxxflags --debug=no --unicode=yes)" Assembler="" Required="yes" PreCompiledHeader="" PCHInCommandLine="no" PCHFlags="" PCHFlagsPolicy="0">
107+
<IncludePath Value="."/>
108+
</Compiler>
109+
<Linker Options="$(shell wx-config --debug=no --libs --unicode=yes);-s" Required="yes"/>
110+
<ResourceCompiler Options="" Required="no"/>
111+
<General OutputFile="" IntermediateDirectory="./build/$(ProjectName)/$(ConfigurationName)" Command="" CommandArguments="" UseSeparateDebugArgs="no" DebugArguments="" WorkingDirectory="" PauseExecWhenProcTerminates="no" IsGUIProgram="no" IsEnabled="yes"/>
112+
<BuildSystem Name="Default"/>
113+
<Environment EnvVarSetName="wxWidgets-3.1.0 (32-bit)" DbgSetName="&lt;Use Defaults&gt;">
114+
<![CDATA[WXCFG=gcc_lib\mswu]]>
115+
</Environment>
116+
<Debugger IsRemote="no" RemoteHostName="" RemoteHostPort="" DebuggerPath="" IsExtended="no">
117+
<DebuggerSearchPaths/>
118+
<PostConnectCommands/>
119+
<StartupCommands/>
120+
</Debugger>
121+
<PreBuild/>
122+
<PostBuild/>
123+
<CustomBuild Enabled="no">
124+
<RebuildCommand/>
125+
<CleanCommand/>
126+
<BuildCommand/>
127+
<PreprocessFileCommand/>
128+
<SingleFileCommand/>
129+
<MakefileGenerationCommand/>
130+
<ThirdPartyToolName>None</ThirdPartyToolName>
131+
<WorkingDirectory/>
132+
</CustomBuild>
133+
<AdditionalRules>
134+
<CustomPostBuild/>
135+
<CustomPreBuild/>
136+
</AdditionalRules>
137+
<Completion EnableCpp11="no" EnableCpp14="no">
138+
<ClangCmpFlagsC/>
139+
<ClangCmpFlags/>
140+
<ClangPP/>
141+
<SearchPaths/>
142+
</Completion>
143+
</Configuration>
144+
<Configuration Name="Win64-Debug" CompilerType="MinGW ( TDM-GCC-32 )" DebuggerType="GNU gdb debugger" Type="Executable" BuildCmpWithGlobalSettings="append" BuildLnkWithGlobalSettings="append" BuildResWithGlobalSettings="append">
145+
<Compiler Options="-g;$(shell wx-config --cxxflags --debug=yes --unicode=yes)" C_Options="-g;$(shell wx-config --cxxflags --debug=yes --unicode=yes)" Assembler="" Required="no" PreCompiledHeader="" PCHInCommandLine="no" PCHFlags="" PCHFlagsPolicy="0">
146+
<IncludePath Value="."/>
147+
</Compiler>
148+
<Linker Options="$(shell wx-config --debug=yes --libs --unicode=yes)" Required="no"/>
149+
<ResourceCompiler Options="" Required="no"/>
150+
<General OutputFile="" IntermediateDirectory="./build/$(ProjectName)/$(ConfigurationName)" Command="" CommandArguments="" UseSeparateDebugArgs="no" DebugArguments="" WorkingDirectory="" PauseExecWhenProcTerminates="no" IsGUIProgram="no" IsEnabled="yes"/>
151+
<BuildSystem Name="Default"/>
152+
<Environment EnvVarSetName="wxWidgets-3.1.0 (64-bit)" DbgSetName="&lt;Use Defaults&gt;">
153+
<![CDATA[WXCFG=gcc_lib\mswud]]>
154+
</Environment>
155+
<Debugger IsRemote="no" RemoteHostName="" RemoteHostPort="" DebuggerPath="" IsExtended="no">
156+
<DebuggerSearchPaths/>
157+
<PostConnectCommands/>
158+
<StartupCommands/>
159+
</Debugger>
160+
<PreBuild/>
161+
<PostBuild/>
162+
<CustomBuild Enabled="no">
163+
<RebuildCommand/>
164+
<CleanCommand/>
165+
<BuildCommand/>
166+
<PreprocessFileCommand/>
167+
<SingleFileCommand/>
168+
<MakefileGenerationCommand/>
169+
<ThirdPartyToolName>None</ThirdPartyToolName>
170+
<WorkingDirectory/>
171+
</CustomBuild>
172+
<AdditionalRules>
173+
<CustomPostBuild/>
174+
<CustomPreBuild/>
175+
</AdditionalRules>
176+
<Completion EnableCpp11="no" EnableCpp14="no">
177+
<ClangCmpFlagsC/>
178+
<ClangCmpFlags/>
179+
<ClangPP/>
180+
<SearchPaths/>
181+
</Completion>
182+
</Configuration>
183+
<Configuration Name="Win64-Release" CompilerType="MinGW ( TDM-GCC-32 )" DebuggerType="GNU gdb debugger" Type="Executable" BuildCmpWithGlobalSettings="append" BuildLnkWithGlobalSettings="append" BuildResWithGlobalSettings="append">
184+
<Compiler Options="-O2;$(shell wx-config --cxxflags --debug=no --unicode=yes)" C_Options="-O2;$(shell wx-config --cxxflags --debug=no --unicode=yes)" Assembler="" Required="yes" PreCompiledHeader="" PCHInCommandLine="no" PCHFlags="" PCHFlagsPolicy="0">
185+
<IncludePath Value="."/>
186+
</Compiler>
187+
<Linker Options="$(shell wx-config --debug=no --libs --unicode=yes);-s" Required="yes"/>
188+
<ResourceCompiler Options="" Required="no"/>
189+
<General OutputFile="" IntermediateDirectory="./build/$(ProjectName)/$(ConfigurationName)" Command="" CommandArguments="" UseSeparateDebugArgs="no" DebugArguments="" WorkingDirectory="" PauseExecWhenProcTerminates="no" IsGUIProgram="no" IsEnabled="yes"/>
190+
<BuildSystem Name="Default"/>
191+
<Environment EnvVarSetName="wxWidgets-3.1.0 (64-bit)" DbgSetName="&lt;Use Defaults&gt;">
192+
<![CDATA[WXCFG=gcc_lib\mswu]]>
193+
</Environment>
194+
<Debugger IsRemote="no" RemoteHostName="" RemoteHostPort="" DebuggerPath="" IsExtended="no">
195+
<DebuggerSearchPaths/>
196+
<PostConnectCommands/>
197+
<StartupCommands/>
198+
</Debugger>
199+
<PreBuild/>
200+
<PostBuild/>
201+
<CustomBuild Enabled="no">
202+
<RebuildCommand/>
203+
<CleanCommand/>
204+
<BuildCommand/>
205+
<PreprocessFileCommand/>
206+
<SingleFileCommand/>
207+
<MakefileGenerationCommand/>
208+
<ThirdPartyToolName>None</ThirdPartyToolName>
209+
<WorkingDirectory/>
210+
</CustomBuild>
211+
<AdditionalRules>
212+
<CustomPostBuild/>
213+
<CustomPreBuild/>
214+
</AdditionalRules>
215+
<Completion EnableCpp11="no" EnableCpp14="no">
216+
<ClangCmpFlagsC/>
217+
<ClangCmpFlags/>
218+
<ClangPP/>
219+
<SearchPaths/>
220+
</Completion>
221+
</Configuration>
222+
</Settings>
223+
</CodeLite_Project>

backend/alldefs.h

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
#include "global.h"
2+
#include "execute.h"
3+
#include "symtab.h"
4+
#include "reswords.h"
5+

0 commit comments

Comments
 (0)