No, I'm not dead yet, I haven't given up, and my computer hasn't blown up either. However, my RL job went nuts during the holiday season, and I had to spend over one month worth of hacking time for some extra work for the NASA (including a short trip to DC). Oh, and there seem to be some new complications with the git repository. Take all this together and you will easily get two months without any visible progress.
But let's start at the beginning. First, I have figured out why my earlier merge attempts did fail. I was actually missing a tracking branch for Zini's repository, and trying to merge with my own master branch - which is free of any changes - certainly does not do anything. So I set up the tracking branch, called git merge, got three pages worth of output, looks good. Except for the fact that my own changes were quitely overwritten by the merge, as git somehow came to the conclusion that a fast-forward merge would be possible.
What went wrong? I am not the kind of person that spams a forum because of something that seems to work for everybody else, as this usually hints towards another mistake from my side. So I tried to fix (or at least understand) it by myself. Google (plus my growing collection of links related to git) just told me that I did everything right, so I had to dig deeper. I learned quite a bit about git this way, including stuff about fast-forward/"real" merges, merhing with and without commit, and also how to use git reset/merge with a specific patch/log. That's nice to know and actually useful on some occasions, but it didn't quite help. Finally I found the problem. Looks like for each file touched by my branch, there is a separate patch in the main branch that somehow (erraneously) confuses git into believing that there is no conflict! How likely is that?
Well, whatever, so my branch has transformed into a clone of Zini's master branch. The most economic way to reintroduce my patches would be to convert my earlier commit to the new code, reapply it, and forget about this incident. After all, how difficult can this be? Quite difficult, actually. For the last four weeks, Zini's master banch seems to be missing the contents of an entire folder, or so my build system tells me. CMake says:
Code: Select all
CMake Warning (dev) at CMakeLists.txt:444 (add_subdirectory):
The source directory
/(...)/zini/openmw/extern/shiny
does not contain a CMakeLists.txt file.
CMake does not support this case but it used to work accidentally and is
being allowed for compatibility.
Policy CMP0014 is not set: Input directories must have CMakeLists.txt. Run
"cmake --help-policy CMP0014" for policy details. Use the cmake_policy
command to set the policy and suppress this warning.
I looked into the folder, and indeed, it is completely empty of anything relevant. Missing a CMakeLists.txt file also does not look like something done on intent. The call to make also agrees with this:
Code: Select all
[ 5%] Building CXX object components/CMakeFiles/components.dir/nifogre/ogre_nif_loader.cpp.o
/home/mark/Privat/OpenMW/zini/openmw/components/nifogre/ogre_nif_loader.cpp:44:41: fatal error: extern/shiny/Main/Factory.hpp: Datei oder Verzeichnis nicht gefunden // -> file not found
compilation terminated.
so maybe there's something wrong with my local copy. Tried a fresh clone of Zini's repo, and still nothing. (Well, at least it did complain at 5%, and not at 95% - saves *some* time.) Am I doing something wrong, did I miss something, or is it just an instance of Murphy's Law in action? I am especially wondering why I seem to be the only guy to encounter this problem.
I actually hoped to have more positive things to report. I have seen that the last release added the ability to move references across cell boundaries, and I wanted to do some work on this. I wanted to join the discussion on this (and other) topics and so many other things - but without the ability to build even the unmodified code, most of what I could add would be speculative.
So, in a nutshell - I want to address the "moved references" issue that you have been discussing for the last two pages, at least by looking at the current code so I can contribute to the on-going discussion, but I'll need to fix the issue with the repository first. Anybody able to help me getting the missing header file (and whatever may be missing on top of this)?