Closed jedediah closed 9 years ago
Invisibility thing is done. This is ready to go.
I, as well as others, have not been able to build this. The issue occurs when running ./applyPatches.sh
. All of the Bukkit patches apply cleanly, however the Craftbukkit patches do not. Using source from a freshly run BuildTools.jar, I get the following errors: (call "." the directory where the BuildTools.jar is located)
When using ./CraftBukkit in the init script, when the applyPatches.sh begins to patch CraftBukkit, I get the folllowing:
cannot apply patches to build/CraftBukkit: you have unstaged changes. U src/main/java/net/minecraft/server/EntityHuman.java U src/main/java/net/minecraft/server/EntityInsentient.java U src/main/java/net/minecraft/server/MobSpawnerAbstract.java U src/main/java/net/minecraft/server/SpawnerCreature.java U src/main/java/net/minecraft/server/World.java cannot apply patches to build/CraftBukkit: your index contains uncommitted changes. U src/main/java/net/minecraft/server/EntityHuman.java U src/main/java/net/minecraft/server/EntityInsentient.java U src/main/java/net/minecraft/server/MobSpawnerAbstract.java U src/main/java/net/minecraft/server/SpawnerCreature.java U src/main/java/net/minecraft/server/World.java M src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java Please commit or stash them.
When using ./Spigot/CraftBukkit in the init script, applyPatches.sh outputs the following when trying to patch Craftbukkit:
Cloning into 'build/CraftBukkit'... done. Resetting build/CraftBukkit to base/CraftBukkit... error: Could not remove config section 'remote.upstream' HEAD is now at d41a259 CraftBukkit $ Sun Feb 15 19:01:46 EST 2015 Applying patches to build/CraftBukkit... Resolve operation not in progress, we are not resuming. Applying: Import necessary NMS classes Applying: Implement the affectsSpawning API Applying: Add methods for working with arrows stuck in living entities Applying: Make AsyncPlayerPreLoginEvent more versatile fatal: sha1 information is lacking or useless (src/main/java/net/minecraft/server/ThreadPlayerLookupUUID.java). Repository lacks necessary blobs to fall back on 3-way merge. Cannot fall back to three-way merge. Patch failed at 0004 Make AsyncPlayerPreLoginEvent more versatile The copy of the patch that failed is found in: /home/kevin/SportBukkit/build/CraftBukkit/.git/rebase-apply/patch When you have resolved this problem, run "git am --continue". If you prefer to skip this patch, run "git am --skip" instead. To restore the original branch and stop patching, run "git am --abort". Something did not apply cleanly to build/CraftBukkit. Please review above details and finish the apply then save the changes with rebuildPatches.sh
Note that in both cases, all Bukkit patches apply cleanly. Is this an issue with SportBukkit or am I missing an obvious direction?
@twizmwazin the SB patches are based on a slightly old CB. The commit before the $
one should be this:
I think you can checkout that commit in the /CraftBukkit
repo and run BuildTools.jar --dont-update
and you will end up with the right $
commit on the patched
branch.
We still haven't figured out the best way to deal with all this in the build process.
@jedediah When checking out 15e81cf551facaee9e808b598655a6cf1274ffb1 SPIGOT-449: Fix the wrong caller being used in chain execute commands
of a cloned CB repo, and then running CB's applyPatches.sh and using that as the argument for init.sh, I end up with the following:
fatal: sha1 information is lacking or useless (src/main/java/net/minecraft/server/EntityHuman.java). Repository lacks necessary blobs to fall back on 3-way merge. Cannot fall back to three-way merge. Patch failed at 0002 Implement the affectsSpawning API
Having BuildTools.jar do basically the same thing yields the same error.
I don't have much experience to speak from for the build process, but perhaps you could modify Spigot's BuildTools or write an equivalent script to suit your needs.
You have to commit the patched sources to the CB repo as well. BuildTools.jar normally does that. If you want to do it manually, I think you can just add src/main/java/net
and commit that.
@jedediah Thanks, finally got patches to apply cleanly and compiled.
Edit: After messing around with SportBukkit, it seems that that your patching system is a bit odd compared to theirs. Perhaps adopting a system more like Spigot's will help allow for easier/automatic building, keeping up-to-date with the latest CraftBukkit changes.
ToDo:
Skipped patches: