--- plplot-5.13.0/cmake/modules/pdf.cmake.orig	2017-10-02 15:44:17.677572500 +0300
+++ plplot-5.13.0/cmake/modules/pdf.cmake	2017-10-02 15:44:42.372618500 +0300
@@ -32,13 +32,11 @@
   find_package(hpdf)
   if(hpdf_FOUND)
     message(STATUS "Looking for haru pdf header and library - found")
-    if(WIN32_OR_CYGWIN AND NOT CMAKE_COMPILER_IS_GNUCC)
+    if(WIN32_OR_CYGWIN)
       set(pdf_COMPILE_FLAGS "-I${hpdf_INCLUDE_DIRS} -DHPDF_DLL")
-    elseif(WIN32_OR_CYGWIN AND CMAKE_COMPILER_IS_GNUCC)
-      set(pdf_COMPILE_FLAGS "-I${hpdf_INCLUDE_DIRS} -DHPDF_DLL_CDECL")
-    else(WIN32_OR_CYGWIN AND NOT CMAKE_COMPILER_IS_GNUCC)
+    else(WIN32_OR_CYGWIN)
       set(pdf_COMPILE_FLAGS "-I${hpdf_INCLUDE_DIRS}")
-    endif(WIN32_OR_CYGWIN AND NOT CMAKE_COMPILER_IS_GNUCC)
+    endif(WIN32_OR_CYGWIN)
     set(pdf_LINK_FLAGS "${hpdf_LIBRARIES}")
     set(pdf_RPATH ${hpdf_LIBRARY_DIRS})
     filter_rpath(pdf_RPATH)
--- plplot-5.13.0/drivers/pdf.c.orig	2017-10-02 15:57:49.713892500 +0300
+++ plplot-5.13.0/drivers/pdf.c	2017-10-02 15:58:11.541132700 +0300
@@ -118,7 +118,12 @@
 void plD_tidy_pdf( PLStream * );
 void plD_state_pdf( PLStream *, PLINT );
 void plD_esc_pdf( PLStream *, PLINT, void * );
-void error_handler( HPDF_STATUS error_no, HPDF_STATUS detail_no, void *user_data );
+#ifdef HPDF_DLL
+void __stdcall
+#else
+void
+#endif
+error_handler( HPDF_STATUS error_no, HPDF_STATUS detail_no, void *user_data );
 void PSDrawTextToCanvas( pdfdev* dev, unsigned char* type1_string, short drawText );
 void PSSetFont( pdfdev* dev, PLUNICODE fci );
 void PSDrawText( pdfdev* dev, PLUNICODE* ucs4, int ucs4Len, short drawText );
