Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ppsspp-libretro-1.0_pre20180317-r1 build failure #107

Open
ghost opened this issue Mar 26, 2018 · 10 comments
Open

ppsspp-libretro-1.0_pre20180317-r1 build failure #107

ghost opened this issue Mar 26, 2018 · 10 comments

Comments

@ghost
Copy link

ghost commented Mar 26, 2018

Hello,
trying to build this package gives me

git update-ref --no-deref refs/git-r3/games-emulation/ppsspp-libretro/0/__main__ dbbe316c5617a4608dcab4a568fb090b207aa21a
fatal: update_ref failed for ref 'refs/git-r3/games-emulation/ppsspp-libretro/0/__main__': cannot update ref 'refs/git-r3/games-emulation/ppsspp-libretro/0/__main__': trying to write ref 'refs/git-r3/games-emulation/ppsspp-libretro/0/__main__' with nonexistent object dbbe316c5617a4608dcab4a568fb090b207aa21a

I have no idea of what it means.

@stefan-gr
Copy link
Owner

ppsspp-libretro seems to have been rebased a few days ago. That means that the src users downloaded before that time are incompatible with current upstream. Please delete ${DISTDIR}/git3-src as root, normally like this rm -rf /usr/portage/distfiles/git3-src.

I bumped the ebuild just in case there are still missing refs at the old commit.

@ghost
Copy link
Author

ghost commented Mar 27, 2018

Now it fetches, but compilation fails with

../ext/native/ext/cityhash/city.cpp: In function ‘void CityHashCrc256Long(const char*, size_t, uint32, uint64*)’:
../ext/native/ext/cityhash/city.cpp:562:31: error: ‘_mm_crc32_u64’ was not declared in this scope
     z = _mm_crc32_u64(z, b + g);                \
                               ^
../ext/native/ext/cityhash/city.cpp:569:5: note: in expansion of macro ‘CHUNK’
     CHUNK(0); PERMUTE3(a, h, c);
     ^~~~~
../ext/native/ext/cityhash/city.cpp:562:31: error: ‘_mm_crc32_u64’ was not declared in this scope
     z = _mm_crc32_u64(z, b + g);                \
                               ^
../ext/native/ext/cityhash/city.cpp:578:5: note: in expansion of macro ‘CHUNK’
     CHUNK(29);
     ^~~~~
../ext/native/ext/cityhash/city.cpp:562:31: error: ‘_mm_crc32_u64’ was not declared in this scope
     z = _mm_crc32_u64(z, b + g);                \
                               ^
../ext/native/ext/cityhash/city.cpp:588:5: note: in expansion of macro ‘CHUNK’
     CHUNK(33);
     ^~~~~
make: *** [Makefile:438: ../ext/native/ext/cityhash/city.o] Error 1

@stefan-gr
Copy link
Owner

Yeah, a fix is already commited to original upstream but didn't land on libretro yet. I hope I chose a commit that works for now.

@ghost
Copy link
Author

ghost commented Mar 28, 2018

New ebuild didn't change a thing. I deleted ${DISTDIR}/git3-src too, to be sure.

@stefan-gr
Copy link
Owner

This one includes the fix I was talking about.

@crocket
Copy link
Contributor

crocket commented Apr 1, 2018

In file included from ../ffmpeg/libavutil/common.h:45:0,
                 from ../ffmpeg/libavutil/avutil.h:288,
                 from ../ffmpeg/libavutil/samplefmt.h:24,
                 from ../ffmpeg/libavcodec/avcodec.h:31,
                 from ../Core/AVIDump.cpp:18:
/usr/include/libavutil/avconfig.h:13:3: error: #error "abi_x86_32 not supported by the package."
 # error

make: *** [Makefile:438: ../Core/AVIDump.o] Error 1
make: *** Waiting for unfinished jobs....
 * ERROR: games-emulation/ppsspp-libretro-1.0_pre20180328::abendbrot failed (compile phase):
 *   emake failed

@crocket
Copy link
Contributor

crocket commented Apr 1, 2018

Perhaps, you need to package v1.5.4 from https://github.com/libretro/ppsspp/releases

@stefan-gr
Copy link
Owner

I took a peek into the Makefile and noticed that the sed lines aren't needed anymore and had the potential to break building. I think that was responsible for this.

The releases are from upstream ppsspp and don't include libretro.

@crocket
Copy link
Contributor

crocket commented Apr 2, 2018

games-emulation/ppsspp-libretro-1.0_pre20180328 can be built, but there should be protections against git repository rebase which happens often.

@stefan-gr
Copy link
Owner

In the past I caught these things almost as soon as they happened because I used to sync everyday and used smart-live-rebuild to be up-to-date upstream. But it's true that it is bothersome that upstream changes their underwear so often.

The most reliable way is to host the non-9999 sources somewhere save and fetch them from there.

Perhaps we could use github in some way to deliver them, I think I can upload binary files when making a tag release and edit it according to version bumps. Well, that will have to wait until I have gentoo again so that I can get all needed tarballs to calculate if github would be able to host them.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants