mirror of
https://codeberg.org/Mercury-IM/Smack
synced 2024-11-24 07:12:05 +01:00
63 lines
1.7 KiB
Markdown
63 lines
1.7 KiB
Markdown
Building Smack
|
|
==============
|
|
|
|
Linux
|
|
-----
|
|
|
|
Building Smack is as simple as
|
|
|
|
```
|
|
git clone git@github.com:igniterealtime/Smack.git
|
|
cd Smack
|
|
gradle assemble
|
|
```
|
|
|
|
Mac
|
|
---
|
|
|
|
Smack requires a case-sensitive file system in order to build. Unfortunately, the macOS operating system is case-insensitive by default.
|
|
To get around this, you can create a case-sensitive disk image to work from.
|
|
|
|
1. Launch Disk Utility (Applications > Utilities)
|
|
2. Click the +, or go to Edit > Add APFS Volume
|
|
3. Give it a name, e.g. "Smack"
|
|
4. Change the format to "APFS (Case-sensitive)"
|
|
5. Click Add
|
|
|
|
It'll auto-mount into /Volumes, e.g. /Volumes/Smack
|
|
|
|
```bash
|
|
cd /Volumes/Smack
|
|
git clone git@github.com:igniterealtime/Smack.git
|
|
cd Smack
|
|
gradle assemble
|
|
```
|
|
|
|
Windows
|
|
-------
|
|
|
|
Smack requires a case-sensitive file system in order to build. Unfortunately, Windows NTFS is case-insensitive by default.
|
|
To get around this, you can set specific folders as case-sensitive (requires Windows 10 v1803 or higher).
|
|
|
|
In an Administrator console:
|
|
|
|
```batch
|
|
fsutil.exe file SetCaseSensitiveInfo C:\git\Smack enable
|
|
cd \git\Smack
|
|
git clone git@github.com:igniterealtime/Smack.git
|
|
cd Smack
|
|
gradle assemble
|
|
```
|
|
|
|
IDE Config
|
|
----------
|
|
|
|
### Eclipse
|
|
|
|
Import IDE settings from `./resources/eclipse/` to configure proper ordering of imports and correct formatting that should pass the CheckStyle rules.
|
|
|
|
### IntelliJ IDEA
|
|
|
|
Import Java Code Style settings from `./resources/intellij/smack_formatter.xml` to configure import optimisation and code formatting to pass the CheckStyle rules when building or submitting PRs.
|
|
|
|
_We've noticed, at time of writing, that IntelliJ often requires a restart when applying new rules - no amount of OK/Apply will do the trick._
|