====== Cygwin ======
I've been playing with getting bluray_info working and installed on Cygwin. I don't know much about porting to it, but I can get the dependencies installed with some hacks.
You'll need these Cygwin development libraries and packages installed:
* bison
* libfreetype
* libgcrypt
* libxml2
* gpgerror
* fontconfig
* flex
* libiconv-devel
* pkg-config
* libtool
You will also need the Java Development Kit installed.
Download and install [[https://www.videolan.org/developers/libaacs.html|libaacs]] into ''/usr'' instead of ''/usr/local'':
./configure --prefix=/usr
make
make install
Download [[https://www.videolan.org/developers/libbluray.html|libbluray]] and make some changes.
Copy ''jni/win32/jni_md.h'' to ''jni/''. Update it to use GCC's typedefs for ''jlong'':
#ifdef __GNUC__
typedef long long jlong;
#else
typedef signed __int64 jlong;
#endif
After that, a standard install:
./configure --prefix=/usr
make
make install
You should be able to build bluray_info at this point. also installing it to ''/usr''. If everything else is in ''/usr/local'', you'd need to set PKG_CONFIG_PATH to ''/usr/local/lib/pkgconfig''
Here's the problems with this whole setup:
* PKG_CONFIG_PATH should be using /usr/local if everything's not installed to ''/usr''
* Shouldn't be copying jni_md header, and instead be using Java's installed one
* Fixing the header include in ''Makefile.am'' **might** need to look something like this, but I haven't gotten it working: ''ACLOCAL_AMFLAGS = -I m4 -I /cygdrive/c/Program\ Files/Java/jdk-12.0.1/include/win32 -I /cygdrive/c/Program\ Files/Java/jdk-12.0.1/include''
* libbluray's autoconf should be checking for the header in configure for Cygwin