Dewb / monome-rack

VCV Rack plugin for monome Eurorack modules
GNU General Public License v2.0
222 stars 12 forks source link

Failed to build latest v2.2.6 #193

Closed cschol closed 5 months ago

cschol commented 5 months ago

Platform/Version

Building with latest rack-plugin-toolchain.

make[3]: Entering directory '/home/build/plugin-src/firmware'                                                                                              
find: ‘../.git/modules/firmware/ansible/refs’: Not a directory                                                                                             
fatal: not a git repository: /home/build/plugin-src/firmware/ansible/../../../../.git/modules/repos/monome/modules/firmware/ansible                        
/bin/bash: -c: line 1: syntax error near unexpected token `newline'                                                                                                                                                                                                                                                    
/bin/bash: -c: line 1: `cut -d '-' -f 1 <<< '                                                                                                              
fatal: not a git repository: /home/build/plugin-src/firmware/ansible/../../../../.git/modules/repos/monome/modules/firmware/ansible                        
make[3]: *** No rule to make target '../.git/modules/firmware/ansible/packed-refs', needed by 'ansible/src/gitversion.c'.  Stop.
make[3]: *** Waiting for unfinished jobs....
Dewb commented 5 months ago

The paths in this output are confusing. It looks like you’re copying the plugin repo out of the library repo’s submodule into a new folder, maybe?

Unfortunately the tracking info for nested submodules is held in the .git folder of the topmost repo. (Which in your case is the library repo.) So the git paths in my makefile are wrong (first error, I can fix that) but the git describe command is failing (second error, I can’t fix that if the build area is disconnected from the submodule info.)

If that’s the case, though, then the build should never have worked?

Dewb commented 5 months ago

From side conversations, it looks like the docker-based build toolchain has always had a nonfatal error with git describe because of the post-git-1.7.8 behavior of moving submodule .git folders to the topmost repo (some background).

194 fixes the fatal error introduced in 2.2.6 caused by the submodule paths being different when the monome-rack repo is itself a submodule of another repo.