mirror of
https://github.com/QB64Official/qb64.git
synced 2024-07-01 09:10:37 +00:00
Fix scroll wheel on Linux; tidy up licensing info; clean up Windows setup; fix OSX script permissions.
The scroll wheel now behaves correctly on Linux. Reports suggest that the fix does not have any effect on OSX though. The licensing documentation is updated to reflect the fact that there are no GPL components included in a QB64 program. Some redundant code was removed from the Windows setup script. OSX setup and run scripts were missing the executable bit - hopefully the repository will preserve that change.
This commit is contained in:
parent
ea20dad4a9
commit
c003f0bc20
|
@ -1,12 +1,12 @@
|
|||
=== IMPORTANT LICENSING NOTE FOR QB64 PROGRAMMERS ===
|
||||
All executables created with QB64 are subject to the LGPL licence conditions.
|
||||
All executables which read sound files are subject to the GPL license as well (due to incorporation of libsamplerate).
|
||||
When distributing your program as an executable all license requirements can be met by:
|
||||
i) Making your program's source code (.BAS) available and declaring it to be GPL as well as
|
||||
ii) Including this entire license folder distributed with QB64
|
||||
It should be noted that the above is not the sole method one could use to abide by the license conditions
|
||||
and that creating closed source QB64 programs is possible when LGPL (not GPL) code is dynamically
|
||||
linked to, not embedded within your executable.
|
||||
All executables which perform any kind of sound operation are subject to the LGPL license (due to incorporation of mpglibdll and OpenAL).
|
||||
Other components are licensed under various permissive licences.
|
||||
When sound components are included (thus the LGPL is in effect), the easiest way to meet terms of the LGPL is to make your program's source code (.BAS) available.
|
||||
If you are not using sound components, you do not need to release the program's source.
|
||||
If you are using fonts, you are bound by the terms of FreeType's license. Somewhere in your software package should include a notice that your program includes the FreeType library (see licence_freetype_ftl.txt for details)
|
||||
In all cases, you should distribute the LICENSE folder with your program.
|
||||
|
||||
It should be noted that providing source code is not the only way to meet the conditions of the LGPL (eg dynamic linking) but it is by far the easiest from a technical point of view at this current time.
|
||||
=====================================================
|
||||
|
||||
The license requirements for components of QB64 are as follows:
|
||||
|
@ -36,8 +36,7 @@ License: BSD 2-clause license
|
|||
License Website: http://opensource.org/licenses/BSD-2-Clause
|
||||
License File: license_opus.txt
|
||||
Location in QB64 distribution: internal/c/parts/audio/conversion/
|
||||
Note that Opusinfo, which is included in the Opus Tools download, is licensed under the GPL but QB64 does not use those files (hence the appended GPL in the licence file).
|
||||
They are distributed in the download/ folder as source only, for the sake of keeping the original download package whole.
|
||||
OpusInfo, which is under a GPL licence, was included in Opus Tools but has been removed from the QB64 distribution.
|
||||
|
||||
Software/Library Name: mpglibdll
|
||||
Website(s):
|
||||
|
@ -65,13 +64,6 @@ License Website: http://www.gnu.org/licenses/licenses.html#LGPL
|
|||
License File: license_gnu_lgpl_2.txt
|
||||
Location in QB64 distribution: internal/c/parts/audio/out/
|
||||
|
||||
Software/Library Name: OpenAL-soft
|
||||
Website:http://kcat.strangesoft.net/openal.html
|
||||
License: LGPL 2
|
||||
License Website: http://www.gnu.org/licenses/licenses.html#LGPL
|
||||
License File: license_gnu_lgpl_2.txt
|
||||
Location in QB64 distribution: internal/c/parts/audio/out/
|
||||
|
||||
Software/Library Name: FreeGLUT
|
||||
Website: http://freeglut.sourceforge.net/
|
||||
License: LGPL (note: website states LGPL, license file is not a copy of GNU LGPL)
|
||||
|
|
|
@ -30095,10 +30095,6 @@ QB64_GAMEPAD_INIT();
|
|||
glutPassiveMotionFunc(GLUT_PASSIVEMOTION_FUNC);
|
||||
glutReshapeFunc(GLUT_RESHAPE_FUNC);
|
||||
|
||||
#ifdef CORE_FREEGLUT
|
||||
glutMouseWheelFunc(GLUT_MOUSEWHEEL_FUNC);
|
||||
#endif
|
||||
|
||||
glutMainLoop();
|
||||
|
||||
#endif //QB64_GLUT
|
||||
|
@ -33573,9 +33569,6 @@ else{
|
|||
glutMotionFunc(GLUT_MOTION_FUNC);
|
||||
glutPassiveMotionFunc(GLUT_PASSIVEMOTION_FUNC);
|
||||
glutReshapeFunc(GLUT_RESHAPE_FUNC);
|
||||
#ifdef CORE_FREEGLUT
|
||||
glutMouseWheelFunc(GLUT_MOUSEWHEEL_FUNC);
|
||||
#endif
|
||||
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -1890,8 +1890,8 @@ if (src_hardware_img->source_state.PO2_fix){
|
|||
if (glut_button==GLUT_LEFT_BUTTON) button=1;
|
||||
if (glut_button==GLUT_RIGHT_BUTTON) button=3;
|
||||
if (glut_button==GLUT_MIDDLE_BUTTON) button=2;
|
||||
if (glut_button==4) button=4;
|
||||
if (glut_button==5) button=5;
|
||||
if (glut_button==3) button=4;
|
||||
if (glut_button==4) button=5;
|
||||
i=(last_mouse_message+1)&65535;
|
||||
if (i==current_mouse_message) current_mouse_message=(current_mouse_message+1)&65535;//if buffer full, skip oldest message
|
||||
mouse_messages[i].movementx=0;
|
||||
|
@ -1941,8 +1941,8 @@ if (src_hardware_img->source_state.PO2_fix){
|
|||
if (glut_button==GLUT_LEFT_BUTTON) button=1;
|
||||
if (glut_button==GLUT_RIGHT_BUTTON) button=3;
|
||||
if (glut_button==GLUT_MIDDLE_BUTTON) button=2;
|
||||
if (glut_button==4) button=4;
|
||||
if (glut_button==5) button=5;
|
||||
if (glut_button==3) button=4;
|
||||
if (glut_button==4) button=5;
|
||||
i=(last_mouse_message+1)&65535;
|
||||
if (i==current_mouse_message) current_mouse_message=(current_mouse_message+1)&65535;//if buffer full, skip oldest message
|
||||
mouse_messages[i].movementx=0;
|
||||
|
@ -2171,25 +2171,4 @@ if (src_hardware_img->source_state.PO2_fix){
|
|||
}
|
||||
|
||||
|
||||
void GLUT_MOUSEWHEEL_FUNC(int wheel, int direction, int x, int y){
|
||||
#ifdef QB64_GLUT
|
||||
//Note: freeglut specific, limited documentation existed so the following research was done:
|
||||
// qbs_print(qbs_str(wheel),NULL); <-- was always 0 [could 1 indicate horizontal wheel?]
|
||||
// qbs_print(qbs_str(direction),NULL); <-- 1(up) or -1(down)
|
||||
// qbs_print(qbs_str(x),NULL); <--mouse x,y co-ordinates
|
||||
// qbs_print(qbs_str(y),1); <
|
||||
if (direction>0){GLUT_MouseButton_Down(4,x,y); GLUT_MouseButton_Up(4,x,y);}
|
||||
if (direction<0){GLUT_MouseButton_Down(5,x,y); GLUT_MouseButton_Up(5,x,y);}
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
#endif
|
||||
|
|
0
qb64_start_osx.command
Normal file → Executable file
0
qb64_start_osx.command
Normal file → Executable file
0
setup_osx.command
Normal file → Executable file
0
setup_osx.command
Normal file → Executable file
|
@ -39,12 +39,6 @@ if exist src.a del src.a
|
|||
call setup_build.bat
|
||||
cd ../../../../../..
|
||||
|
||||
cd internal\c\parts\user_mods\os\win
|
||||
..\..\..\..\c_compiler\bin\gcc -DFREEGLUT_STATIC -I..\..\..\..\ -I..\..\include -c ..\..\src\luke_mods.cpp -o temp\luke_mods.o
|
||||
..\..\..\..\c_compiler\bin\gcc -DFREEGLUT_STATIC -I..\..\..\..\ -I..\..\include -c ..\..\src\steve_mods.cpp -o temp\steve_mods.o
|
||||
..\..\..\..\c_compiler\bin\ar rcs src.a temp\steve_mods.o temp\luke_mods.o
|
||||
cd ..\..\..\..\..\..
|
||||
|
||||
echo Building 'QB64'
|
||||
copy internal\source\*.* internal\temp\ >nul
|
||||
cd internal\c
|
||||
|
|
Loading…
Reference in a new issue