mirror of
https://github.com/QB64-Phoenix-Edition/QB64pe.git
synced 2024-05-12 12:00:13 +00:00
Step 10: Update remaining stuff
- checks all remaining occurrences of the term 'qb64', some remain untouched, some are renamed according to context - also added new logo for README.md - this step does finalize the 'Phoenix Edition' re-branding
This commit is contained in:
parent
39a35626c1
commit
2ec897b75d
6
.github/workflows/ci.yml
vendored
6
.github/workflows/ci.yml
vendored
|
@ -78,21 +78,21 @@ jobs:
|
|||
shell: bash
|
||||
run: tests/run_c_tests.sh
|
||||
|
||||
- name: Print QB64 Version
|
||||
- name: Print QB64-PE Version
|
||||
run: ./qb64pe -?
|
||||
|
||||
- name: Test
|
||||
shell: bash
|
||||
run: tests/run_tests.sh
|
||||
|
||||
- name: Create QB64 Artifact
|
||||
- name: Create QB64-PE Artifact
|
||||
shell: bash
|
||||
run: .ci/make-dist.sh ${{ matrix.os }} "${{ env.version }}"
|
||||
|
||||
# Note that compiling programs in dist does modify the ./dist and make it
|
||||
# dirty, but that's ok because we've already create the .7z or .tar.gz
|
||||
# artifacts in the previous step
|
||||
- name: Test QB64 Artifact
|
||||
- name: Test QB64-PE Artifact
|
||||
shell: bash
|
||||
run: tests/run_dist_tests.sh ./dist/qb64pe ${{ matrix.prefix }}
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
# QB64 development build - Changelog
|
||||
# QB64 Phoenix Edition - Changelog
|
||||
Upcoming version is currently identified as v2.1, but that number may change before release.
|
||||
|
||||
## New features
|
||||
|
|
4
Makefile
4
Makefile
|
@ -154,14 +154,14 @@ EXE_OBJS += $(QB_QBX_OBJ)
|
|||
CLEAN_LIST += $(QB_QBX_OBJ)
|
||||
|
||||
ifdef BUILD_QB64
|
||||
# Copy the QB64 source code into temp before compiling
|
||||
# Copy the QB64-PE source code into temp before compiling
|
||||
ifeq ($(OS),win)
|
||||
_shell := $(shell $(CP) $(PATH_INTERNAL_SRC)\\* $(PATH_INTERNAL_TEMP)\\)
|
||||
else
|
||||
_shell := $(shell $(CP) $(PATH_INTERNAL_SRC)/* $(PATH_INTERNAL_TEMP)/)
|
||||
endif
|
||||
|
||||
# Required dependencies of QB64 itself
|
||||
# Required dependencies of QB64-PE itself
|
||||
DEP_FONT := y
|
||||
DEP_ICON := y
|
||||
DEP_ICON_RC := y
|
||||
|
|
27
README.md
27
README.md
|
@ -1,10 +1,9 @@
|
|||
# QB64
|
||||
# QB64 Phoenix Edition
|
||||
|
||||
![githubstrip](https://avatars.githubusercontent.com/u/104205737?s=200&v=4)
|
||||
![QB64-PE](source/peLogo.png)
|
||||
|
||||
|
||||
QB64 is a modern extended BASIC+OpenGL language that retains QB4.5/QBasic compatibility and compiles native binaries for Windows (XP and up), Linux and macOS.
|
||||
[![contributions welcome](https://img.shields.io/badge/contributions-welcome-brightgreen.svg?style=flat)](https://github.com/QB64Team/qb64/issues)
|
||||
QB64 is a modern extended BASIC+OpenGL language that retains QB4.5/QBasic compatibility and compiles native binaries for Windows (Vista and up), Linux and macOS.
|
||||
|
||||
# Table of Contents
|
||||
1. [Installation](#Installation)
|
||||
|
@ -16,51 +15,51 @@ QB64 is a modern extended BASIC+OpenGL language that retains QB4.5/QBasic compat
|
|||
3. [Additional Info](#Additional_Info)
|
||||
|
||||
# Installation <a name="Installation"></a>
|
||||
Download the appropriate package for your operating system over at https://github.com/QB64-Phoenix-Edition/QB64pe/releases/tag/v1.0alpha
|
||||
Download the appropriate package for your operating system over at https://github.com/QB64-Phoenix-Edition/QB64pe/releases/latest
|
||||
|
||||
<a name="Windows"></a>
|
||||
## Windows
|
||||
|
||||
Make sure to extract the package contents to a folder with full write permissions (failing to do so may result in IDE or compilation errors).
|
||||
|
||||
* It is advisable to to whitelist the QB64 folder in your antivirus/antimalware software *
|
||||
* It is advisable to to whitelist the 'qb64pe' folder in your antivirus/antimalware software *
|
||||
|
||||
<a name="macOS"></a>
|
||||
## macOS
|
||||
Before using QB64 make sure to install the Xcode command line tools with:
|
||||
Before using QB64-PE make sure to install the Xcode command line tools with:
|
||||
```bash
|
||||
xcode-select --install
|
||||
```
|
||||
|
||||
Run ```./setup_osx.command``` to compile QB64 for your OS version.
|
||||
Run ```./setup_osx.command``` to compile QB64-PE for your OS version.
|
||||
|
||||
<a name="Linux"></a>
|
||||
## Linux
|
||||
Compile QB64 with ```./setup_lnx.sh```.
|
||||
Compile QB64-PE with ```./setup_lnx.sh```.
|
||||
|
||||
Dependencies should be automatically installed. Required packages include OpenGL, ALSA and the GNU C++ Compiler.
|
||||
|
||||
<a name="Usage"></a>
|
||||
# Usage
|
||||
Run the QB64 executable to launch the IDE, which you can use to edit your .BAS files. From there, hit F5 to compile and run your code.
|
||||
Run the ```qb64pe``` executable to launch the IDE, which you can use to edit your .BAS files. From there, hit F5 to compile and run your code.
|
||||
|
||||
To generate a binary without running it, hit F11.
|
||||
|
||||
Additionally, if you do not wish to use the integrated IDE and to only compile your program, you can use the following command-line calls:
|
||||
|
||||
```qb64 -c yourfile.bas```
|
||||
```qb64pe -c yourfile.bas```
|
||||
|
||||
```qb64 -c yourfile.bas -o outputname.exe```
|
||||
```qb64pe -c yourfile.bas -o outputname.exe```
|
||||
|
||||
Replacing `-c` with `-x` will compile without opening a separate compiler window.
|
||||
|
||||
|
||||
<a name="Additional_Info"></a>
|
||||
# Additional Information
|
||||
More about QB64 at our wiki: https://qb64phoenix.com/qb64wiki
|
||||
More about QB64-PE at our wiki: https://qb64phoenix.com/qb64wiki
|
||||
|
||||
We have a community forum at: https://qb64phoenix.com/forum
|
||||
|
||||
We don't currently tweet. Sorry.
|
||||
|
||||
Find us on Discord: https://discord.gg/8YsAZrN3qb
|
||||
Find us on Discord: https://discord.gg/D2M7hepTSx
|
||||
|
|
|
@ -17,22 +17,22 @@ This describes the process that goes on to compile a QB64 program into an execut
|
|||
CI Process
|
||||
----------
|
||||
|
||||
This describes how QB64 itself is built by the CI process to produce a release of QB64. The actual build scripts that do all of this are located in `.ci/`.`
|
||||
This describes how QB64-PE itself is built by the CI process to produce a release of QB64-PE. The actual build scripts that do all of this are located in `.ci/`.`
|
||||
|
||||
1. Before CI ever begins, `./internal/source/` contains the generated C++ source of a previous version of `qb64pe.bas`.
|
||||
2. `.ci/calculate_version.sh` is run to determine what version this CI build should be considered. That information is written to `./internal/version.txt`, if it is a release version `./internal/version.txt` is removed.
|
||||
3. `qb64pe_bootstrap` is compiled from `./internal/source`
|
||||
1. `make` is used to call the `Makefile` with the proper `OS` setting, `EXE=qb64pe_bootstrap`, and `BUILD_QB64=y`.
|
||||
2. The Makefile will take care of copying `./internal/source` into `./internal/temp` and compiling QB64 with the proper settings.
|
||||
2. The Makefile will take care of copying `./internal/source` into `./internal/temp` and compiling QB64-PE with the proper settings.
|
||||
4. `qb64pe_bootstrap` is used to compile `./source/qb64pe.bas` into a proper `qb64pe` executable
|
||||
1. We run `./qb64pe_bootstrap -x ./source/qb64pe.bas` to compile QB64. This compiles QB64 the same way as a regular QB64 program as detailed in 'Build Process'
|
||||
5. `./internal/source` is cleared out and, excluding a few files, the contents of `./internal/temp` are copied into `./internal/source` as the new generated C++ source of QB64.
|
||||
6. `tests/run_tests.sh` is run to test the compiled version of QB64. A failure of these tests fails the build at this stage.
|
||||
7. `.ci/make-dist.sh` is run to produce the distribution of QB64, which is stored as a build artifact and potentially a release artifact..
|
||||
1. We run `./qb64pe_bootstrap -x ./source/qb64pe.bas` to compile QB64-PE. This compiles QB64-PE the same way as a regular QB64 program as detailed in 'Build Process'
|
||||
5. `./internal/source` is cleared out and, excluding a few files, the contents of `./internal/temp` are copied into `./internal/source` as the new generated C++ source of QB64-PE.
|
||||
6. `tests/run_tests.sh` is run to test the compiled version of QB64-PE. A failure of these tests fails the build at this stage.
|
||||
7. `.ci/make-dist.sh` is run to produce the distribution of QB64-PE, which is stored as a build artifact and potentially a release artifact..
|
||||
1. The contents of the distribution depends on the OS it is being created for.
|
||||
1. The Windows distribution contains a precompiled copy of QB64 as `qb64pe.exe` and can be used immediately.
|
||||
2. The Linux and OSX distributions do not contain a precompiled copy of QB64. Those version come with a "setup" script that has to be run which builds QB64 based on the contents of `./internal/source`.
|
||||
8. `tests/run_dist_tests.sh` is run to verify the distribution of QB64 works correctly.
|
||||
1. The Windows distribution contains a precompiled copy of QB64-PE as `qb64pe.exe` and can be used immediately.
|
||||
2. The Linux and OSX distributions do not contain a precompiled copy of QB64-PE. Those version come with a "setup" script that has to be run which builds QB64-PE based on the contents of `./internal/source`.
|
||||
8. `tests/run_dist_tests.sh` is run to verify the distribution of QB64-PE works correctly.
|
||||
9. If this is a CI build of `main` and `./internal/source` has changed due to the newly compiled version, then `git` is used to commit and push the updated version of `./internal/source` to the GitHub repo.
|
||||
|
||||
Repository Layout
|
||||
|
@ -40,34 +40,34 @@ Repository Layout
|
|||
|
||||
- `.ci/` - All files in this folder are related to the CI build process.
|
||||
- `bootstrap.bat`
|
||||
- Windows only, Downloads MinGW compiler, builds the precompiled version of QB64 located in `./internal/source` as `qb64pe_bootstrap.exe`.
|
||||
- Windows only, Downloads MinGW compiler, builds the precompiled version of QB64-PE located in `./internal/source` as `qb64pe_bootstrap.exe`.
|
||||
- `bootstrap.sh`
|
||||
- Linux and OSX, builds the precompiled version of QB64 located in `./internal/source` as `qb64pe_bootstrap.exe`.
|
||||
- Linux and OSX, builds the precompiled version of QB64-PE located in `./internal/source` as `qb64pe_bootstrap.exe`.
|
||||
- `compile.bat`
|
||||
- Uses `qb64pe_bootstrap.exe` to build `./source/qb64pe.bas`. This compiled QB64 is the released `QB64pe.exe`.
|
||||
- Uses `qb64pe_bootstrap.exe` to build `./source/qb64pe.bas`. This compiled QB64-PE is the released `qb64pe.exe`.
|
||||
- `compile.sh`
|
||||
- Uses `qb64pe_bootstrap` to build `./source/qb64pe.bas`. This built QB64 is what is used for testing, and the sources from this QB64 are placed into `./internal/source`.
|
||||
- Uses `qb64pe_bootstrap` to build `./source/qb64pe.bas`. This built QB64-PE is what is used for testing, and the sources from this QB64-PE are placed into `./internal/source`.
|
||||
- `make-dist.sh`
|
||||
- Copies all the relevant parts of QB64 into a new folder, which can be distributed as a release.
|
||||
- Copies all the relevant parts of QB64-PE into a new folder, which can be distributed as a release.
|
||||
- `push-internal-source.sh`
|
||||
- If `./internal/source` is different after building `./source/qb64pe.bas`, then this will automatically push those changes to the repository to update the sources used to build `qb64pe_bootstrap`.
|
||||
- `internal/`
|
||||
- `help/`
|
||||
- Contains a downloaded copy of the help files, so that they do not have to be downloaded when QB64 is installed.
|
||||
- `c/` - Contains everything related to the C/C++ source files for QB64.
|
||||
- Contains a downloaded copy of the help files, so that they do not have to be downloaded when QB64-PE is installed.
|
||||
- `c/` - Contains everything related to the C/C++ source files for QB64-PE.
|
||||
- `c_compiler/`
|
||||
- On Windows, this folder is populated with the MinGW C++ compiler during the CI process (or when using `setup_win.bat`.
|
||||
- `parts/`
|
||||
- Contains the sources to many of the dependencies that QB64 uses. Most of the dependencies have a `build.mk` file that is used by the main `Makefile` to build them.
|
||||
- `source/`
|
||||
- Contains a copy of the generated C++ source of a previous version of QB64. This is used to build a copy of QB64 using only a C++ ccompiler. This is updated automatically via the CI process.
|
||||
- Contains a copy of the generated C++ source of a previous version of QB64-PE. This is used to build a copy of QB64-PE using only a C++ ccompiler. This is updated automatically via the CI process.
|
||||
- `version.txt`
|
||||
- QB64 checks this file to determine if there is a version tag (`-foobar` on the end of the version) for this version of QB64.
|
||||
- QB64-PE checks this file to determine if there is a version tag (`-foobar` on the end of the version) for this version of QB64-PE.
|
||||
- `source/`
|
||||
- Contains the QB64 source to QB64 itself.
|
||||
- `tests/` - Contains the tests run on QB64 during CI to verify changes.
|
||||
- Contains the QB64 source to QB64-PE itself.
|
||||
- `tests/` - Contains the tests run on QB64-PE during CI to verify changes.
|
||||
- `compile_tests/`
|
||||
- Testcases related to specific dependencies that QB64 that can pull in. These tests are largely intended to test that QB64 and the Makefile correctly pulls in the proper dependencies.
|
||||
- Testcases related to specific dependencies that QB64 can pull in. These tests are largely intended to test that QB64-PE and the Makefile correctly pulls in the proper dependencies.
|
||||
- `qbasic_testcases/`
|
||||
- A variety of collected QB64 sample programs
|
||||
- `dist/`
|
||||
|
@ -77,17 +77,17 @@ Repository Layout
|
|||
- `qbasic_tests.sh`
|
||||
- Compiled all the testcases in `qbasic_testcases` and verifies they compile successfully.
|
||||
- `dist_tests.sh`
|
||||
- Verifies the output of `make-dist.sh` is a functioning distribution of QB64
|
||||
- Verifies the output of `make-dist.sh` is a functioning distribution of QB64-PE
|
||||
- `run_dist_tests.sh`
|
||||
- Runs the distribution test collecitons.
|
||||
- `run_tests.sh`
|
||||
- Runs all individual test collections.
|
||||
- `setup_lnx.sh`
|
||||
- Used as part of the Linux release to install dependencies and compile QB64.
|
||||
- Used as part of the Linux release to install dependencies and compile QB64-PE.
|
||||
- `setup_osx.command`
|
||||
- Used as part of the OSx release to compile QB64.
|
||||
- Used as part of the OSx release to compile QB64-PE.
|
||||
- `setup_win.bat`
|
||||
- Used only for compiled QB64 directly from a clone of the repository (not a release, we distribute QB64 already compiled in the Windows release)
|
||||
- Used only for compiled QB64-PE directly from a clone of the repository (not a release, we distribute QB64-PE already compiled in the Windows release)
|
||||
- `Makefile`
|
||||
- Used for building QB64 programs.
|
||||
|
||||
|
@ -95,14 +95,14 @@ Repository Layout
|
|||
Makefile Usage and Parameters
|
||||
-----------------------------
|
||||
|
||||
> Note: These parameters are not guaranteed to stay the same. The 'setup' scripts and QB64 are the only things intended to call the Makefile directly.
|
||||
> Note: These parameters are not guaranteed to stay the same. The 'setup' scripts and QB64-PE are the only things intended to call the Makefile directly.
|
||||
|
||||
These flags control some basic settings for how the `Makefile` can compile the program.
|
||||
|
||||
| Parameter | Default Value | Valid Values | Required | Description |
|
||||
| :-------- | :-----------: | :----------: | :------: | :---------- |
|
||||
| `OS` | None | `win`, `lnx`, or `osx` | Yes | Indicates to the Makefile which OS it is being used to compile for. Controls what utilities the Makefile assumes is available and where they are located, and also platform dependent compiler settings. |
|
||||
| `BUILD_QB64` | None | `y` | No | If set then the Makefile will build the QB64 source located in `./internal/source`. If `EXE` is not specified, that is set to `qb64`. Dependency settings for QB64 are set automatically. |
|
||||
| `BUILD_QB64` | None | `y` | No | If set then the Makefile will build the QB64-PE source located in `./internal/source`. If `EXE` is not specified, that is set to `qb64pe`. Dependency settings for QB64-PE are set automatically. |
|
||||
| `EXE` | None | Executable name | Yes, if not using `BUILD_QB64` | Specifies the name of the executable to build. If on Windows, it should include `.exe` on the end. Spaces in the filename should be escaped with `\` |
|
||||
| `TEMP_ID` | None | blank, or an integer | No | Controls the name of `qbx*.cpp` and `./internal/temp*` that are used for compilation. This is mainly relevant for multiple instances of the IDE, where the second instance compiles to `./internal/temp2` and tells the Makefile which to use. Further instances will use higher numbers. |
|
||||
| `CXXFLAGS_EXTRA` | None | Collection of C++ compiler flags | No | These flags are provided to the compiler when building the C++ files. This includes the generate source files, but also files like `libqb.cpp`. |
|
||||
|
@ -136,7 +136,7 @@ Versioning
|
|||
|
||||
QB64 Phoenix Edition follows SemVer, which means that major releases indicate a breaking change, minor releases indicate new features, and patch release indicates bug fixes.
|
||||
|
||||
- Release versions of QB64 will have just a version number in the form `X.Y.Z`. All other versions of QB64 will have some kind of 'tag' at the end of the version, which is arbitrary text after a `-` placed on the end of the version.
|
||||
- Release versions of QB64-PE will have just a version number in the form `X.Y.Z`. All other versions of QB64-PE will have some kind of 'tag' at the end of the version, which is arbitrary text after a `-` placed on the end of the version.
|
||||
- CI versions get a tag in the form of `-XX-YYYYYYYY`, where `XX` is the number of commits since the last release, and `YYYYYYYY` is the first 8 digits of the commit hash of that build.
|
||||
- If you build the repository directly, you would get an `-UNKNOWN` version, which indicates that due to not running through the CI process we do not know what particular version (if any) that you are using.
|
||||
|
||||
|
|
|
@ -27496,7 +27496,7 @@ void sub__icon(int32 handle_icon, int32 handle_window_icon, int32 passed) {
|
|||
if (!ExeIcon16)
|
||||
ExeIcon16 = LoadImage(GetModuleHandle(NULL), MAKEINTRESOURCE(0), IMAGE_ICON, 16, 16, 0);
|
||||
|
||||
// If we have an embedded icon, we'll use it instead of QB64's default
|
||||
// If we have an embedded icon, we'll use it instead of QB64-PE's default
|
||||
if (!(passed & 1) && (ExeIcon)) {
|
||||
SendMessage(window_handle, WM_SETICON, ICON_BIG, (LPARAM)ExeIcon);
|
||||
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
// Note: Updated 23/9/2018: Switched to www.qb64.org since .net is down;
|
||||
// Note: Updated 12/8/2022: Switched to qb64phoenix.com since .org is dead;
|
||||
// Note: Updated 23/9/2018: Switched to www.qb64.org since .net is dead;
|
||||
// replaces implementation with download sample code from wiki Note: Updated
|
||||
// 26/3/2014: Switched to WWW.QB64.NET to avoid IP changes when QB64 moves
|
||||
// servers Note: Updated 16/1/2013: Switched to QB64.NET IP service Note: Updated
|
||||
|
@ -14,7 +15,7 @@
|
|||
|
||||
$CHECKING:OFF
|
||||
FUNCTION whatismyip$
|
||||
url$ = "www.qb64.org/ip.php"
|
||||
url$ = "qb64phoenix.com/qb64_files/ip.php"
|
||||
url2$ = url$
|
||||
x = INSTR(url2$, "/")
|
||||
IF x THEN url2$ = LEFT$(url$, x - 1)
|
||||
|
@ -145,7 +146,7 @@ qbs *WHATISMYIP() { // changed name from FUNC_WHATISMYIP to WHATISMYIP
|
|||
if (new_error)
|
||||
goto exit_subfunc;
|
||||
qbs_set(_FUNC_WHATISMYIP_STRING_URL,
|
||||
qbs_new_txt_len("www.qb64.org/ip.php", 19));
|
||||
qbs_new_txt_len("qb64phoenix.com/qb64_files/ip.php", 33));
|
||||
qbs_cleanup(qbs_tmp_base, 0);
|
||||
qbs_set(_FUNC_WHATISMYIP_STRING_URL2, _FUNC_WHATISMYIP_STRING_URL);
|
||||
qbs_cleanup(qbs_tmp_base, 0);
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
@echo off
|
||||
|
||||
echo This batch is an admin tool to return QB64 to its pre-setup state
|
||||
echo This batch is an admin tool to return QB64-PE to its pre-setup state
|
||||
pause
|
||||
|
||||
echo Purging temp folders
|
||||
|
|
34
setup_lnx.sh
34
setup_lnx.sh
|
@ -1,10 +1,10 @@
|
|||
#!/bin/bash
|
||||
# QB64 Installer
|
||||
# Argument 1: If not blank, qb64 will not be started after compilation
|
||||
# QB64-PE Installer
|
||||
# Argument 1: If not blank, qb64pe will not be started after compilation
|
||||
|
||||
dont_run="$1"
|
||||
|
||||
#This checks the currently installed packages for the one's QB64 needs
|
||||
#This checks the currently installed packages for the one's QB64-PE needs
|
||||
#And runs the package manager to install them if that is the case
|
||||
pkg_install() {
|
||||
#Search
|
||||
|
@ -100,7 +100,7 @@ elif [ "$DISTRO" == "voidlinux" ]; then
|
|||
|
||||
elif [ -z "$DISTRO" ]; then
|
||||
echo "Unable to detect distro, skipping package installation"
|
||||
echo "Please be aware that for QB64 to compile, you will need the following installed:"
|
||||
echo "Please be aware that for QB64-PE to compile, you will need the following installed:"
|
||||
echo " OpenGL developement libraries"
|
||||
echo " ALSA development libraries"
|
||||
echo " GNU C++ Compiler (g++)"
|
||||
|
@ -108,22 +108,22 @@ elif [ -z "$DISTRO" ]; then
|
|||
echo " zlib"
|
||||
fi
|
||||
|
||||
echo "Compiling and installing QB64..."
|
||||
echo "Compiling and installing QB64-PE..."
|
||||
make clean OS=lnx
|
||||
make OS=lnx BUILD_QB64=y -j3
|
||||
|
||||
if [ -e "./qb64" ]; then
|
||||
if [ -e "./qb64pe" ]; then
|
||||
echo "Done compiling!!"
|
||||
|
||||
echo "Creating ./run_qb64pe.sh script..."
|
||||
_pwd=`pwd`
|
||||
echo "#!/bin/sh" > ./run_qb64pe.sh
|
||||
echo "cd $_pwd" >> ./run_qb64pe.sh
|
||||
echo "./qb64 &" >> ./run_qb64pe.sh
|
||||
echo "./qb64pe &" >> ./run_qb64pe.sh
|
||||
|
||||
chmod +x ./run_qb64pe.sh
|
||||
#chmod -R 777 ./
|
||||
echo "Adding QB64 menu entry..."
|
||||
echo "Adding QB64-PE menu entry..."
|
||||
cat > ~/.local/share/applications/qb64pe.desktop <<EOF
|
||||
[Desktop Entry]
|
||||
Name=QB64 Programming IDE
|
||||
|
@ -138,22 +138,22 @@ StartupNotify=false
|
|||
EOF
|
||||
|
||||
if [ -z "$dont_run" ]; then
|
||||
echo "Running QB64..."
|
||||
./qb64 &
|
||||
echo "Running QB64-PE..."
|
||||
./qb64pe &
|
||||
fi
|
||||
|
||||
echo "QB64 is located in this folder:"
|
||||
echo "QB64-PE is located in this folder:"
|
||||
echo "`pwd`"
|
||||
echo "There is a ./run_qb64pe.sh script in this folder that should let you run qb64 if using the executable directly isn't working."
|
||||
echo "There is a ./run_qb64pe.sh script in this folder that should let you run qb64pe if using the executable directly isn't working."
|
||||
echo
|
||||
echo "You should also find a QB64 option in the Programming/Development section of your menu you can use."
|
||||
echo "You should also find a QB64-PE option in the Programming/Development section of your menu you can use."
|
||||
else
|
||||
### QB64 didn't compile
|
||||
echo "It appears that the qb64 executable file was not created, this is usually an indication of a compile failure (You probably saw lots of error messages pop up on the screen)"
|
||||
### QB64-PE didn't compile
|
||||
echo "It appears that the qb64pe executable file was not created, this is usually an indication of a compile failure (You probably saw lots of error messages pop up on the screen)"
|
||||
echo "Usually these are due to missing packages needed for compilation. If you're not running a distro supported by this compiler, please note you will need to install the packages listed above."
|
||||
echo "If you need help, please feel free to post on the QB64 Forums detailing what happened and what distro you are using."
|
||||
echo "If you need help, please feel free to post on the QB64 Phoenix Edition Forums detailing what happened and what distro you are using."
|
||||
echo "Also, please tell them the exact contents of this next line:"
|
||||
echo "DISTRO: $DISTRO"
|
||||
fi
|
||||
echo
|
||||
echo "Thank you for using the QB64 installer."
|
||||
echo "Thank you for using the QB64-PE installer."
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
# Argument 1: Location of qb64 (blank means current directory
|
||||
# Argument 2: If not blank, qb64 will not be started after compiltaion
|
||||
# Argument 1: Location of qb64pe (blank means current directory
|
||||
# Argument 2: If not blank, qb64pe will not be started after compiltaion
|
||||
|
||||
cd "$(dirname "$1")"
|
||||
dont_run="$2"
|
||||
|
@ -11,7 +11,7 @@ stty -icanon -echo min 1 time 0
|
|||
dd count=1 2>/dev/null
|
||||
stty $OLDCONFIG
|
||||
}
|
||||
echo "QB64 Setup"
|
||||
echo "QB64-PE Setup"
|
||||
echo ""
|
||||
|
||||
find . -name "*.command" -exec chmod +x {} \;
|
||||
|
@ -25,23 +25,23 @@ if [ -z "$(which clang++)" ]; then
|
|||
exit 1
|
||||
fi
|
||||
|
||||
echo "Building 'QB64'"
|
||||
echo "Building 'QB64-PE'"
|
||||
make OS=osx clean
|
||||
make OS=osx BUILD_QB64=y -j3
|
||||
|
||||
echo ""
|
||||
if [ -f ./qb64 ]; then
|
||||
if [ -f ./qb64pe ]; then
|
||||
if [ -z "$dont_run" ]; then
|
||||
echo "Launching 'QB64'"
|
||||
./qb64
|
||||
echo "Launching 'QB64-PE'"
|
||||
./qb64pe
|
||||
fi
|
||||
echo ""
|
||||
echo "Note: 'qb64' is located in same folder as this setup program."
|
||||
echo "Note: 'qb64pe' is located in same folder as this setup program."
|
||||
echo "Press any key to continue..."
|
||||
[ -z "$dont_run" ] && Pause
|
||||
exit 0
|
||||
else
|
||||
echo "Compilation of QB64 failed!"
|
||||
echo "Compilation of QB64-PE failed!"
|
||||
[ -z "$dont_run" ] && Pause
|
||||
exit 1
|
||||
fi
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
@echo off
|
||||
setlocal
|
||||
echo QB64 Setup
|
||||
echo QB64-PE Setup
|
||||
echo.
|
||||
|
||||
mkdir internal\c\c_compiler
|
||||
|
@ -23,12 +23,12 @@ del %MINGW%
|
|||
echo Cleaning...
|
||||
internal\c\c_compiler\bin\mingw32-make.exe OS=win clean >NUL 2>NUL
|
||||
|
||||
echo Building QB64...
|
||||
echo Building QB64-PE...
|
||||
internal\c\c_compiler\bin\mingw32-make.exe OS=win BUILD_QB64=y || goto report_error
|
||||
|
||||
echo.
|
||||
echo Launching 'QB64'
|
||||
qb64
|
||||
echo Launching 'QB64-PE'
|
||||
qb64pe
|
||||
|
||||
echo.
|
||||
pause
|
||||
|
@ -36,6 +36,6 @@ pause
|
|||
exit 0
|
||||
|
||||
report_error:
|
||||
echo "Error compiling QB64."
|
||||
echo "Error compiling QB64-PE."
|
||||
echo "Please review above steps and report to https://github.com/QB64-Phoenix-Edition/QB64pe/issues if you can't get it to work"
|
||||
exit 1
|
||||
|
|
|
@ -339,7 +339,7 @@ FUNCTION ide2 (ignore)
|
|||
|
||||
RunMenuSaveExeWithSource = i
|
||||
menu$(m, i) = "Output EXE to Source #Folder": i = i + 1
|
||||
menuDesc$(m, i - 1) = "Toggles compiling program to QB64's folder or to source folder"
|
||||
menuDesc$(m, i - 1) = "Toggles compiling program to QB64-PE's folder or to source folder"
|
||||
IF SaveExeWithSource THEN
|
||||
menu$(RunMenuID, RunMenuSaveExeWithSource) = CHR$(7) + menu$(RunMenuID, RunMenuSaveExeWithSource)
|
||||
END IF
|
||||
|
@ -479,9 +479,9 @@ FUNCTION ide2 (ignore)
|
|||
menuDesc$(m, i - 1) = "Launches the default browser and navigates to the current article on the wiki"
|
||||
menu$(m, i) = "-": i = i + 1
|
||||
'menu$(m, i) = "Check for #Newer Version...": i = i + 1
|
||||
'menuDesc$(m, i - 1) = "Displays the current version of QB64"
|
||||
'menuDesc$(m, i - 1) = "Displays the current version of QB64-PE"
|
||||
menu$(m, i) = "#About...": i = i + 1
|
||||
menuDesc$(m, i - 1) = "Displays the current version of QB64"
|
||||
menuDesc$(m, i - 1) = "Displays the current version of QB64-PE"
|
||||
menusize(m) = i - 1
|
||||
|
||||
menus = m
|
||||
|
@ -1168,11 +1168,11 @@ FUNCTION ide2 (ignore)
|
|||
|
||||
IF WhiteListQB64FirstTimeMsg = 0 THEN
|
||||
IF INSTR(_OS$, "WIN") THEN whiteListProcess$ = "and the process 'qb64pe.exe' " ELSE whiteListProcess$ = ""
|
||||
result = idemessagebox("Welcome to QB64", "QB64 is an independently distributed program, and as such" + CHR$(10) + _
|
||||
"both 'qb64" + extension$ + "' and the programs you create with it may" + CHR$(10) + _
|
||||
result = idemessagebox("Welcome to QB64-PE", "QB64-PE is an independently distributed program, and as such" + CHR$(10) + _
|
||||
"both 'qb64pe" + extension$ + "' and the programs you create with it may" + CHR$(10) + _
|
||||
"eventually be flagged as false positives by your" + CHR$(10) + _
|
||||
"antivirus/antimalware software." + CHR$(10) + CHR$(10) + _
|
||||
"It is advisable to whitelist your whole QB64 folder" + CHR$(10) + _
|
||||
"It is advisable to whitelist your whole 'qb64pe' folder" + CHR$(10) + _
|
||||
whiteListProcess$ + "to avoid operation errors.", "#OK;#Don't show this again")
|
||||
|
||||
PCOPY 3, 0: SCREEN , , 3, 0
|
||||
|
@ -1684,7 +1684,7 @@ FUNCTION ide2 (ignore)
|
|||
"source code is saved. You can change that by unchecking the" + CHR$(10) + _
|
||||
"option 'Output EXE to Source Folder' in the Run menu.", "#OK;#Don't show this again;#Cancel")
|
||||
ELSE
|
||||
result = idemessagebox("Run", "Your program will be compiled to your QB64 folder. You can" + CHR$(10) + _
|
||||
result = idemessagebox("Run", "Your program will be compiled to your 'qb64pe' folder. You can" + CHR$(10) + _
|
||||
"change that by checking the option 'Output EXE to Source" + CHR$(10) + _
|
||||
"Folder' in the Run menu.", "#OK;#Don't show this again;#Cancel")
|
||||
END IF
|
||||
|
@ -2980,7 +2980,7 @@ FUNCTION ide2 (ignore)
|
|||
GOTO regularTextBox_click
|
||||
ELSEIF ActiveINCLUDELink > 0 THEN
|
||||
'Double-click on an $INCLUDE statement launches that file in
|
||||
'a separate instance of QB64:
|
||||
'a separate instance of QB64-PE:
|
||||
p$ = idepath$ + pathsep$
|
||||
f$ = p$ + ActiveINCLUDELinkFile
|
||||
IF _FILEEXISTS(f$) = 0 THEN f$ = ActiveINCLUDELinkFile
|
||||
|
@ -18198,7 +18198,7 @@ SUB IdeMakeFileMenu
|
|||
END IF
|
||||
menu$(m, i) = "-": i = i + 1
|
||||
menu$(m, i) = "E#xit": i = i + 1
|
||||
menuDesc$(m, i - 1) = "Exits QB64"
|
||||
menuDesc$(m, i - 1) = "Exits QB64-PE"
|
||||
menusize(m) = i - 1
|
||||
END SUB
|
||||
|
||||
|
@ -19718,9 +19718,9 @@ FUNCTION BinaryFormatCheck% (pathToCheck$, pathSepToCheck$, fileToCheck$)
|
|||
_PRINTSTRING (2, idewy - 3), "Preparing to convert..."
|
||||
PCOPY 3, 0
|
||||
IF INSTR(_OS$, "WIN") THEN
|
||||
SHELL _HIDE "qb64 -x internal/support/converter/QB45BIN.bas -o internal/utilities/QB45BIN"
|
||||
SHELL _HIDE "qb64pe -x internal/support/converter/QB45BIN.bas -o internal/utilities/QB45BIN"
|
||||
ELSE
|
||||
SHELL _HIDE "./qb64 -x ./internal/support/converter/QB45BIN.bas -o ./internal/utilities/QB45BIN"
|
||||
SHELL _HIDE "./qb64pe -x ./internal/support/converter/QB45BIN.bas -o ./internal/utilities/QB45BIN"
|
||||
END IF
|
||||
IF _FILEEXISTS(convertUtility$) THEN GOTO ConvertIt
|
||||
clearStatusWindow 0
|
||||
|
|
|
@ -50,8 +50,8 @@ FUNCTION Wiki$ (PageName$) 'Read cached wiki page (download, if not yet cached)
|
|||
a$ = a$ + "a tool called ''curl'' is required, but it wasn't found on your system." + CHR$(10) + CHR$(10)
|
||||
a$ = a$ + "* To get ''curl'', visit the official [https://curl.se/download.html download page]." + CHR$(10)
|
||||
a$ = a$ + "** Grab the latest ''binary'' archive available for your system." + CHR$(10)
|
||||
a$ = a$ + "** Unpack and drop the ''curl'' executable into the QB64 folder." + CHR$(10)
|
||||
a$ = a$ + "** If there's a file named ''curl-ca-bundle.crt'' or similar, drop it into the QB64 folder too." + CHR$(10)
|
||||
a$ = a$ + "** Unpack and drop the ''curl'' executable into the '''qb64pe''' folder." + CHR$(10)
|
||||
a$ = a$ + "** If there's a file named ''curl-ca-bundle.crt'' or similar, drop it into the '''qb64pe''' folder too." + CHR$(10)
|
||||
Wiki$ = a$: EXIT FUNCTION
|
||||
END IF
|
||||
|
||||
|
|
BIN
source/peLogo.png
Normal file
BIN
source/peLogo.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 17 KiB |
|
@ -79,11 +79,11 @@ QB64_uptime! = TIMER
|
|||
NoInternalFolder:
|
||||
IF _DIREXISTS("internal") = 0 THEN
|
||||
_SCREENSHOW
|
||||
PRINT "QB64 cannot locate the 'internal' folder"
|
||||
PRINT "QB64-PE cannot locate the 'internal' folder"
|
||||
PRINT
|
||||
PRINT "Check that QB64 has been extracted properly."
|
||||
PRINT "For MacOSX, launch 'qb64pe_start.command' or enter './qb64' in Terminal."
|
||||
PRINT "For Linux, in the console enter './qb64'."
|
||||
PRINT "Check that QB64-PE has been extracted properly."
|
||||
PRINT "For MacOSX, launch 'qb64pe_start.command' or enter './qb64pe' in Terminal."
|
||||
PRINT "For Linux, in the console enter './qb64pe'."
|
||||
DO
|
||||
_LIMIT 1
|
||||
LOOP UNTIL INKEY$ <> ""
|
||||
|
@ -117,7 +117,7 @@ DIM SHARED UseGL 'declared SUB _GL (no params)
|
|||
DIM SHARED OS_BITS AS LONG, WindowTitle AS STRING
|
||||
OS_BITS = 64: IF INSTR(_OS$, "[32BIT]") THEN OS_BITS = 32
|
||||
|
||||
IF OS_BITS = 32 THEN WindowTitle = "QB64 x32" ELSE WindowTitle = "QB64 x64"
|
||||
IF OS_BITS = 32 THEN WindowTitle = "QB64 Phoenix Edition (x32)" ELSE WindowTitle = "QB64 Phoenix Edition (x64)"
|
||||
_TITLE WindowTitle
|
||||
|
||||
DIM SHARED ConsoleMode, No_C_Compile_Mode, NoIDEMode
|
||||
|
@ -1161,7 +1161,7 @@ GOTO sendcommand
|
|||
noide:
|
||||
IF (qb64versionprinted = 0 OR ConsoleMode = 0) AND NOT QuietMode THEN
|
||||
qb64versionprinted = -1
|
||||
PRINT "QB64 Compiler V" + Version$
|
||||
PRINT "QB64-PE Compiler V" + Version$
|
||||
END IF
|
||||
|
||||
IF CMDLineFile = "" THEN
|
||||
|
@ -2878,7 +2878,7 @@ OPEN tmpdir$ + "inpchain.txt" FOR OUTPUT AS #23: CLOSE #23 'will be appended to
|
|||
OPEN tmpdir$ + "ontimer.txt" FOR OUTPUT AS #24
|
||||
OPEN tmpdir$ + "ontimerj.txt" FOR OUTPUT AS #25
|
||||
|
||||
'*****#26 used for locking qb64
|
||||
'*****#26 used for locking qb64pe
|
||||
|
||||
OPEN tmpdir$ + "onkey.txt" FOR OUTPUT AS #27
|
||||
OPEN tmpdir$ + "onkeyj.txt" FOR OUTPUT AS #28
|
||||
|
@ -3946,7 +3946,7 @@ DO
|
|||
|
||||
|
||||
'assume library name in double quotes follows
|
||||
'assume library is in main qb64 folder
|
||||
'assume library is in main qb64pe folder
|
||||
x$ = getelement$(ca$, x)
|
||||
IF ASC(x$) <> 34 THEN a$ = "Expected LIBRARY " + CHR$(34) + "..." + CHR$(34): GOTO errmes
|
||||
x$ = RIGHT$(x$, LEN(x$) - 1)
|
||||
|
@ -13101,9 +13101,9 @@ FUNCTION ParseCMDLineArgs$ ()
|
|||
SELECT CASE LCASE$(LEFT$(token$, 2))
|
||||
CASE "-?" 'Command-line help
|
||||
_DEST _CONSOLE
|
||||
IF qb64versionprinted = 0 THEN qb64versionprinted = -1: PRINT "QB64 Compiler V" + Version$
|
||||
IF qb64versionprinted = 0 THEN qb64versionprinted = -1: PRINT "QB64-PE Compiler V" + Version$
|
||||
PRINT
|
||||
PRINT "Usage: qb64 [switches] <file>"
|
||||
PRINT "Usage: qb64pe [switches] <file>"
|
||||
PRINT
|
||||
PRINT "Options:"
|
||||
PRINT " <file> Source file to load" ' '80 columns
|
||||
|
@ -13156,7 +13156,7 @@ FUNCTION ParseCMDLineArgs$ ()
|
|||
CASE "-s" 'Settings
|
||||
settingsMode = -1
|
||||
_DEST _CONSOLE
|
||||
IF qb64versionprinted = 0 THEN qb64versionprinted = -1: PRINT "QB64 Compiler V" + Version$
|
||||
IF qb64versionprinted = 0 THEN qb64versionprinted = -1: PRINT "QB64-PE Compiler V" + Version$
|
||||
SELECT CASE LCASE$(MID$(token$, 3))
|
||||
CASE ""
|
||||
PRINT "debuginfo = ";
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
result=0
|
||||
|
||||
./tests/assert.sh ./tests/compile_tests.sh ./qb64 || result=1
|
||||
./tests/assert.sh ./tests/qbasic_tests.sh ./qb64 || result=1
|
||||
./tests/assert.sh ./tests/compile_tests.sh ./qb64pe || result=1
|
||||
./tests/assert.sh ./tests/qbasic_tests.sh ./qb64pe || result=1
|
||||
|
||||
exit $result
|
||||
|
|
Loading…
Reference in a new issue