1. 14 May, 2017 2 commits
    • Erwin Janssen's avatar
      Use static zlib on Windows build · b1a5af2d
      Erwin Janssen authored
      The windows dependencies submodule now includes the static version of
      zlib when building Graphviz. Some third party DLLs might still require a
      zlib.dll however, but this will be added when required.
      b1a5af2d
    • Erwin Janssen's avatar
      Move Windows dependencies to x86 directory · d4eb54e2
      Erwin Janssen authored
      The current Windows dependencies are all 32bit. To compile a 64bit
      Graphviz, 64bit dependencies are required. In order to have both the
      32bit and 64bit libraries, we store the 32bit libraries in the x86
      folder.
      d4eb54e2
  2. 06 Apr, 2017 2 commits
    • Erwin Janssen's avatar
      Add tools from cmd/tools to CMake build · 7d45c924
      Erwin Janssen authored
      The directory cmd/tools contains multiple command line tools, these are
      added to the CMake build. Because most tools shared some or most of their
      settings, a CMake function could be used to set most of these settings.
      7d45c924
    • Erwin Janssen's avatar
      Add the `dot` executable to the CMake build · 15bc2714
      Erwin Janssen authored
      The CMake build now builds `dot` and allows graphs to be rendered. Only
      the `core` outputs and `dot_layout` are included for now.
      15bc2714
  3. 05 Apr, 2017 1 commit
    • Erwin Janssen's avatar
      gmlparse.y: Each identifier in dedicated statement · 265797ce
      Erwin Janssen authored
      It is good practice to define each identifier in a dedicated statement,
      various standard and style guides recommend this. Because where multiple
      declarators appear in the same declaration, the type of an identifier
      may not meet a developer's expectations.
      265797ce
  4. 04 Apr, 2017 1 commit
  5. 06 Mar, 2017 1 commit
  6. 05 Mar, 2017 2 commits
  7. 17 Jan, 2017 4 commits
    • Erwin Janssen's avatar
      Merge Windows dependencies into one submodule · a9d2e2fb
      Erwin Janssen authored
      Instead of using a submodule for every Windows dependency with a lot of
      extra files, we now use a single submodule that only contains those files
      that are required. This means fewer submodules and shorter download time
      (because of the reduction in size and number of files).
      Also removed some unused links in Smyrna.
      a9d2e2fb
    • Erwin Janssen's avatar
      Replace checks for `WIN32` with `_WIN32` · 0bf08962
      Erwin Janssen authored
      The preprocesser macro `WIN32` is defined by the user, while `_WIN32` is
      defined by the compiler. To improve consistantcy, and prevent errors
      caused by forgetting to define `WIN32` somewhere, it is better to use
      `_WIN32` to check for Windows.
      0bf08962
    • Erwin Janssen's avatar
      Fixed use of unitialized variable in lefty · 1ef7b1f7
      Erwin Janssen authored
      In the file cmd/lefty/ws/x11/gquery.c, function Gqwpopaction:
      THe char c is declared without initializer, giving it a unpredictable
      value. If the next if statement takes the false branch, the function where
      c is set is not executed. The next if statement then checks `c != 13`, but
      because C could have any value, the behavior is unpredictable.
      Initializing c with a known value, such as 0, fixes the problem.
      1ef7b1f7
    • Erwin Janssen's avatar
      Replace Windows' pragma linking with VS linking · 2d95aab6
      Erwin Janssen authored
      In various places, mostly the projects in `cmd` and `plugin`, had a
      `#pragma comment( lib, "libname.lib" )` in the source code for linking
      under Windows. Were possible, these have been removed and replaced link
      specifications in the Visual Studio project files.
      This seperates the linking from the source code and makes transitioning to
      other build systems easier.
      2d95aab6
  8. 04 Jan, 2017 3 commits
  9. 21 Dec, 2016 1 commit
  10. 20 Dec, 2016 1 commit
  11. 19 Dec, 2016 1 commit
    • Erwin Janssen's avatar
      Fix fonts errors on Windows with binary outputs · bff38666
      Erwin Janssen authored
      Outputs like 'png' didn't render the text properly on Windows (rectangles
      instead of letters). The cause was that Pango was missings its modules. This
      change adds post build commands to the `smyrna` en `gvplugin_pango` Visual
      Studio projects, so the required modules are copied and then recognized by
      pango.
      Fixes issue #1186
      bff38666
  12. 18 Dec, 2016 3 commits
  13. 17 Dec, 2016 1 commit
  14. 16 Dec, 2016 1 commit
  15. 12 Dec, 2016 1 commit
    • Erwin Janssen's avatar
      Remove unused FPE initialization from dot.c · 4c0f203b
      Erwin Janssen authored
      In cmd/dot/dot.c, non standard floating point exceptions are enabled
      in a platform specific way in a sequence of `ifdef`s. However, this
      is never used because:
      - The rest of the code never checks for set floating point exception
        flags (with `fetestexcept` for example).
      - The check that toggles the whole block, `ifndef NO_FPERR` is almost
        false. `NO_FPERR` is always defined on Windows and only disabled on
        specific platforms that do not support `-ffast-math`.
      
      In conclusion, the code adds unnecessary complexity and can be removed.
      4c0f203b
  16. 09 Dec, 2016 1 commit
  17. 07 Dec, 2016 2 commits
  18. 04 Dec, 2016 1 commit
  19. 27 Nov, 2016 1 commit
  20. 22 Nov, 2016 1 commit
  21. 18 Nov, 2016 1 commit
  22. 28 Oct, 2016 1 commit
  23. 04 Oct, 2016 2 commits
    • Erwin Janssen's avatar
      Replace checks for <stdint.h> and <inttypes.h> · ebf8529b
      Erwin Janssen authored
      Instead of checking for the availability of stdint.h and inttypes.h with HAVE_STDINT_H and HAVE_INTTYPES_H, simply include stdint.h. The header stdint.h is part of the C99 standard, so it can be safely assumed that this header is present.
      inttypes.h contains everything stdint.h includes, but in all cases here, stdint.h suffices.
      ebf8529b
    • Erwin Janssen's avatar
      Replace `Void_t` with `void` · 85154368
      Erwin Janssen authored
      There used to be a check that defined `Void_t` as `void` when standard C
      was used and `char` otherwise. Since we are always compiling with standard
      C and `void` is a valid type, there is no reason to keep this typedef.
      85154368
  24. 18 Sep, 2016 4 commits
    • Erwin Janssen's avatar
      Remove define and usage of HAVE_STDLIB_H · 47aeab85
      Erwin Janssen authored
      The header stdlib.h is always present since we are compiling with standard C.
      There is no need for this check, since it will always evaluate to true.
      47aeab85
    • Erwin Janssen's avatar
      Remove unused *.vcproj files. · b007c6d5
      Erwin Janssen authored
      The .vcproj files are the old Visual Studio project files. A lot of these
      were upgraded and the old versions removed. These vcproj files have an
      upgraded .vcxproj, but hadn't been removed yet.
      b007c6d5
    • Erwin Janssen's avatar
      Remove all references to getopt_compat.h · 7d0738d2
      Erwin Janssen authored
      This file is removed, so references to this file should be removed as well.
      7d0738d2
    • Erwin Janssen's avatar
      Windows: link getopt library to multiple projects · 7fe02daf
      Erwin Janssen authored
      The projects that required getopt were:
      - acyclic
      - bcomps
      - ccomps
      - dijkstra
      - edgepaint
      - gc
      - gml2gv
      - graphml2gv
      - gv2gml
      - gvcolor
      - gvgen
      - gvmap
      - gvpack
      - gvprlib
      - gxl2gv
      - mingle
      - mm2gv
      - nop
      - prune
      - sccmap
      - smyrna
      - tred
      - unflatten
      
      Also made minor changes to graphml2gv for proper linking.
      7fe02daf
  25. 17 Sep, 2016 1 commit
    • Erwin Janssen's avatar
      Remove HAVE_CONFIG_H check · ffb894f2
      Erwin Janssen authored
      config.h should always be included, a build without it never happens.
      The checks on Linux always succeed, because autotools automatically
      defines HAVE_CONFIG_H on all the Makefiles. On Windows this is not the
      case. Removing all the checks revealed that multiple projects did not
      include config.h because HAVE_CONFIG_H wasn't defined. This was the case
      for at least the following projects:
      - acyclic
      - bcomps
      - ccomps
      - dijkstra
      - ingraphs
      - gc
      - gml2gv
      - graphml2gv
      - gv2gml
      - gvcolor
      - gvgen
      - mm2gv
      - nop
      - pathplan
      - rbtree
      - sccmap
      - topfish
      - tred
      
      Added `windows\include` to the additional include directories and adding
      some library paths solves some, but not all problems that emerged when the
      check was removed and some code actually got compiled that wasn't compiled
      before.
      ffb894f2