Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 0 additions & 3 deletions .gitmodules

This file was deleted.

42 changes: 0 additions & 42 deletions CMake/setup_vcpkg.cmake

This file was deleted.

37 changes: 0 additions & 37 deletions buildLinux-debug.sh

This file was deleted.

37 changes: 0 additions & 37 deletions buildLinux-release.sh

This file was deleted.

25 changes: 0 additions & 25 deletions buildWindows-debug.bat

This file was deleted.

25 changes: 0 additions & 25 deletions buildWindows-release.bat

This file was deleted.

80 changes: 68 additions & 12 deletions docs/BUILDING.md
Original file line number Diff line number Diff line change
@@ -1,28 +1,84 @@
# Building Harbour of Harkinian
# Building Harbour Ports

## Prerequisites
## Prerequisites on all platforms
- C++ compiler
- Git
- CMake
- vcpkg

## Windows

Powershell instructions
- Configure CMake (should automatically install vcpkg dependencies)
- I usually use Ninja for configuring, if you want to do that just add `-G Ninja` to the command
- _(if vcpkg dependencies do not automatically download, run vcpkg install in your project root, then delete the build folder and reconfigure)_

```powershell
cmake -S . -B build -DCMAKE_TOOLCHAIN_FILE="/path/to/vcpkg/scripts/buildsystems/vcpkg.cmake"
```
# When cloning, be sure to set the --recursive flag for submodule dependencies

# In the root folder, i.e. Harbour/, run:
- Build Harbour Ports
```powershell
cmake --build build
```
- The executable will be found at `build/Harbour.exe`

cmake -S . -B build -DCMAKE_TOOLCHAIN_FILE="external/vcpkg/scripts/buildsystems/vcpkg.cmake"
## Linux
- Ensure all dependencies are installed (Ubuntu)
```bash
sudo apt-get install -y \
autoconf \
autoconf-archive \
automake \
libtool \
libltdl-dev \
build-essential \
curl \
zip \
unzip \
tar \
pkg-config \
libssl-dev \
libx11-dev \
libgl1-mesa-dev
```
- Ensure vcpkg dependencies are installed
```bash
./path/to/vcpkg install
```

# Then to build a debug build, run
- Configure CMake
```bash
cmake -S . -B build -DCMAKE_TOOLCHAIN_FILE="path/to/vcpkg/scripts/buildsystems/vcpkg.cmake"
```

- Build Harbour Ports
```bash
cmake --build build
```
- The executable will be found at `build/Harbour`

## Linux
I only did a Linux build once, and in Github Codespaces, and even then I was unable to test it fully.
If someone else has a real Linux machine (or a fuller VM than GH Codespaces) and could test build this, that would be great.

## MacOS
Currently unknown, documentation will be added when verified.
## macOS
_note: documentation is still undergoing for macOS_
- Ensure cURL is installed
```
brew install curl
```

- Ensure vcpkg dependencies are installed
```
./path/to/vcpkg install
```

- Configure CMake
```
cmake -S . -B build -DCMAKE_TOOLCHAIN_FILE="path/to/vcpkg/scripts/buildsystems/vcpkg.cmake"
```

- Build Harbour Ports
```
cmake --build build
```

For additional help, please refer to the [workflow](../.github/workflows/build.yaml) and the section for your specific platform.
Loading