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

Get the test suite running on Windows #231

Merged
merged 11 commits into from Sep 14, 2018
Merged

Commits on Sep 14, 2018

  1. tectonic: clean up xeq_level

    This macro was being used in a gross way to hide an offset in the array
    indexing. Make it a bit clearer what's going on, and importantly change some
    magic hardcoded numbers into symbolic constants. Also fix an off-by-one in the
    size that was exposed in the port to Winows.
    pkgw committed Sep 14, 2018
    Copy the full SHA
    3a1d8aa View commit details
    Browse the repository at this point in the history
  2. tectonic: avoid Unix-specific headers for the Windows build

    Could probably remove some of these #includes outright, but at the moment it's
    easier just to #ifdef them.
    pkgw committed Sep 14, 2018
    Copy the full SHA
    7c8cfcd View commit details
    Browse the repository at this point in the history
  3. build.rs: adapt so that we can build on Windows (!)

    In particular, on Windows we force static linking, since the DLL loading story
    is *gross*.
    pkgw committed Sep 14, 2018
    Copy the full SHA
    704bd90 View commit details
    Browse the repository at this point in the history
  4. Copy the full SHA
    686157e View commit details
    Browse the repository at this point in the history
  5. src/io/local_cache.rs: fix this on Windows

    First, there's a quirk about file locking that we need to work around. Second,
    we need to add a racy check to the code that saves files under their MD5sum
    names, since on Windows we can't rename one file onto another file that's
    read-only.
    pkgw committed Sep 14, 2018
    Copy the full SHA
    2d38f68 View commit details
    Browse the repository at this point in the history
  6. tectonic/dpx-pdffont.c: getenv() doesn't do the job on Windows

    Windows provides a getenv() call but it seems that it only looks at
    libc-internal data structures, such that we don't see the values of
    environment variables changed at runtime through Rust. This breaks the test
    suite. So, use GetEnvironmentVariable instead.
    pkgw committed Sep 14, 2018
    Copy the full SHA
    1aa0bd9 View commit details
    Browse the repository at this point in the history
  7. tectonic/dpx-dpxfile.c: make tempfile creation work on Windows

    Of course, all file I/O should be going through Rust, so *really* we should be
    ripping this code out. But I want to get us working on Windows and this seems
    like the fastest path forward.
    pkgw committed Sep 14, 2018
    Copy the full SHA
    cab95a7 View commit details
    Browse the repository at this point in the history
  8. tectonic/dpx-dpxfile.c: rip out some cache code for Windows

    This is more code that should probably disappear anyway -- I think it only
    exists for shelling out to Ghostscript and other stuff along those lines that
    we definitely don't want to do in Tectonic. It used <dirent.h> and so was
    going to be annoying to compile on Windows, so, sayonara.
    pkgw committed Sep 14, 2018
    Copy the full SHA
    5cf1c95 View commit details
    Browse the repository at this point in the history
  9. tectonic/dpx-spc_dvips.c: rip out calculate_PS for Windows

    This shelled out to Ghostscript to calculate bounding boxes or something.
    There's no way we wanted to do that anyway, so kill the code. It wouldn't
    build on Windows due to the use of popen().
    pkgw committed Sep 14, 2018
    Copy the full SHA
    47c7126 View commit details
    Browse the repository at this point in the history
  10. Copy the full SHA
    6e5ef17 View commit details
    Browse the repository at this point in the history
  11. Copy the full SHA
    9578522 View commit details
    Browse the repository at this point in the history