WIN32 support

Ugh
This commit is contained in:
vscosta 2014-11-03 00:13:34 +00:00
parent ef0d7b77fb
commit c7a3836b2c
9 changed files with 184 additions and 150 deletions

View File

@ -11,9 +11,12 @@
#ifdef __WINDOWS__ #ifdef __WINDOWS__
#ifndef __MSYS__
#include <winsock2.h> #include <winsock2.h>
#endif
#include <windows.h> #include <windows.h>
#if HAVE_XOS_H #if HAVE_XOS_H
#include <xos.h> /* Windows POSIX enhancements */ #include <xos.h> /* Windows POSIX enhancements */
#endif #endif

View File

@ -23,7 +23,7 @@
#endif #endif
#ifndef __WINDOWS__ #ifndef __WINDOWS__
#if defined(_MSC_VER) || defined(__MINGW32__) #if defined(_MSC_VER) || defined(__MINGW32__) || defined(__MSYS__)
#define __WINDOWS__ 1 #define __WINDOWS__ 1
#endif #endif
#endif #endif

View File

@ -517,7 +517,8 @@ AC_PROG_INSTALL
AC_PROG_RANLIB AC_PROG_RANLIB
AC_CHECK_TOOL(AR,[ar],:) AC_CHECK_TOOL(AR,[ar],:)
AC_PATH_PROG(INSTALL_INFO,install-info,true,$PATH:/sbin:/usr/sbin:/usr/etc:/usr/local/sbin) AC_PATH_PROG(INSTALL_INFO,install-info,true,$PATH:/sbin:/usr/sbin:/usr/etc:/usr/local/sbin)
AC_CHECK_HEADERS(winsock.h winsock2.h) dnl do this before windows.h
AC_CHECK_HEADERS(winsock.h winsock2.h windows.h)
AC_PATH_PROG(SHELL,sh) AC_PATH_PROG(SHELL,sh)
AC_CHECK_TOOL([INDENT], [indent], [:]) AC_CHECK_TOOL([INDENT], [indent], [:])
@ -661,9 +662,6 @@ if test "$yap_cv_judy" != "no"; then
AC_CHECK_LIB(Judy, Judy1Set,,[AC_MSG_RESULT([libJudy not found, UDI will only work with one Index at a time])]) AC_CHECK_LIB(Judy, Judy1Set,,[AC_MSG_RESULT([libJudy not found, UDI will only work with one Index at a time])])
fi fi
AC_CHECK_HEADERS(IntSafe.h)
AC_CHECK_HEADERS(windows.h)
if test "$threads" = yes if test "$threads" = yes
then then
AC_CHECK_HEADERS(pthread.h) AC_CHECK_HEADERS(pthread.h)
@ -1091,7 +1089,7 @@ dnl Linux has both elf and a.out, in this case we found elf
INSTALL_ENV="YAPSHAREDIR=\$(DESTDIR)\$(SHAREDIR) YAPLIBDIR=\$(DESTDIR)\$(YAPLIBDIR)" INSTALL_ENV="YAPSHAREDIR=\$(DESTDIR)\$(SHAREDIR) YAPLIBDIR=\$(DESTDIR)\$(YAPLIBDIR)"
fi fi
;; ;;
*cyg*|*mingw*) *cyg*|*mingw*|*msys*)
# gcc on cygwin seems to have trouble with longjmp # gcc on cygwin seems to have trouble with longjmp
# and -fomit-frame-point -DBP_FREE # and -fomit-frame-point -DBP_FREE
YAPLIB="yap.dll" YAPLIB="yap.dll"
@ -1918,11 +1916,11 @@ if test "x$PLARCH" = "x"; then
*linux*) *linux*)
PLARCH=`echo $host | sed 's/-.*/-linux/'` PLARCH=`echo $host | sed 's/-.*/-linux/'`
;; ;;
i?86-*mingw32*) i?86-*mingw32*|i?86-msys*)
# Make PLARCH match the definition in src/config/win32.h # Make PLARCH match the definition in src/config/win32.h
PLARCH=i386-win32 PLARCH=i386-win32
;; ;;
x86_64-*mingw32*) x86_64-*mingw32*|x86_64-msys*)
# Make PLARCH match the definition in src/config/win64.h # Make PLARCH match the definition in src/config/win64.h
PLARCH=x64-win64 PLARCH=x64-win64
;; ;;

View File

@ -370,70 +370,91 @@ CC="gcc -mabi=64" ./configure --...
Be careful. At least for some versions of `GCC`, compiling with Be careful. At least for some versions of `GCC`, compiling with
`-g` seems to result in broken code. `-g` seems to result in broken code.
+ WIN32: GCC is distributed in the MINGW32 and CYGWIN packages. @section Compiling_under_mingw Compiling Under MINGW's GCC
The Mingw32 environment is available from the URL:
<http://www.mingw.org>
You will need to install the `msys` and `mingw`
packages. You should be able to do configure, make and make install.
If you use mingw32 you may want to search the contributed packages for
the `gmp` multi-precision arithmetic library. If you do setup YAP
with `gmp` note that libgmp.dll must be in the path,
otherwise YAP will not be able to execute.
The CygWin environment is available from the URL:
<http://www.cygwin.com>
and mirrors. We suggest using recent versions of the cygwin shell. The
compilation steps under the cygwin shell are as follows:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mkdir cyg
$YAPSRC/configure --enable-coroutining \\
--enable-depth-limit \\
--enable-max-performance
make
make install
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
By default, YAP will use the `-mno-cygwin` option to
disable the use of the cygwin dll and to enable the mingw32 subsystem
instead. YAP thus will not need the cygwin dll. It instead accesses
the system's CRTDLL.DLL `C` run time library supplied with
Win32 platforms through the mingw32 interface. Note that some older
WIN95 systems may not have CRTDLL.DLL, in this case it should
be sufficient to import the file from a newer WIN95 or WIN98 machine.
You should check the default installation path which is set to
/YAP in the standard Makefile. This string will usually
be expanded into c:\\YAP by Windows.
The cygwin environment does not provide <tt>gmp</tt> on the MINGW
subsystem. You can fetch a dll for the <tt>gmp</tt> library from
<http://www.sf.net/projects/mingwrep>.
It is also possible to configure YAP to be a part of the cygwin
environment. In this case you should use:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mkdir cyg
$YAPSRC/configure --enable-max-performance \\
--enable-cygwin=yes
make
make install
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
YAP will then compile using the cygwin library and will be installed
in cygwin's /usr/local. You can use YAP from a cygwin console,
or as a standalone application as long as it can find
cygwin1.dll in its path. Note that you may use to use
`--enable-depth-limit` for Aleph compatibility, and that you may
want to be sure that GMP is installed.
AT the time of this writing (Nov 2014), YAP uses the mkwin script to
compile in WIN32. The script requires either a WIN32 environment, or a
cross-compiler/emulator package.
YAP has been known to compile under VISUAL C++, and should compile and
work under cygwin, but the favorite approach is to use a native
msys/mingw environment. This approach has two key advantages:
+ it does not need an interface layer and a DLL, like cygwin.
+ it enables cross-compilation.
YAP uses rge `mkwin` script to generate a new YAP installer. The script is
controlled by a set of of variables that should be defined early on in
the text. It executes by first calling `configure`, next running `make`, and
last (if all went well) executing `nsys`.
In more detail, the following mingw based environments have been
tested to develop YAP:
* MSYS 1 and mingw32/64: most WIN32 development did occur in this
native environment. Best results were achieved with
MSYS-1.0.* and TDM-GCC:
mingw: http://www.mingw.org/
original msys: http://www.mingw.org/wiki/MSYS
mingw64: http://mingw-w64.sourceforge.net/
TDM-GCC: http://tdm-gcc.tdragon.net/
* This distribution was compiled with the MSYS2 integrated
development, that supports 32 and 64 bit compilation. Setting up
MSYS2 should be done with care, but it is worth it as the
distribution works nicely in MINGW32 and MINGW64 mode. A third
compilation mode, MSYS mode, has problems with compiling sockets.
msys2: http://sourceforge.net/projects/msys2/
* cygwin and cygwin64 now can generate native applications
cygwin: https://www.cygwin.com/
* Linux has a nice cross-compilation environment, with some of the best
work done for Fedora.
fedora mingw cross-compiler: http://fedoraproject.org/wiki/MinGW/CrossCompilerFramework
One problem is that this environment requires emulation of WIN32
executables to generate the initial saved state and to compile
`chr`. `wine` sometimes does the task, but it sometimes fails.
* OSX has the `mxe` package, a port of mingw that is in active
development.
mxe: http://mxe.cc/
Note that OSX has technical limitations that preclude porting
wine64. wine32 is distributed with package managers such as ports
and brew.
=== Setting up WIN32 compilation
Compiling WIN32 packages depends on a number of parameters: chosen compiler,
packages to install, directory setup. You may have to change these ones that
control the `mkwin` script:
* `VER`: major/minor number
* `PATCHID`: third digit
* `SRC`: directory containing yap sources, in the local environment notation.
* `SRC_WIN`: same, but in WIN32 standard notation.
* `THREADS`: yes or no? controllable from the command line.
* `ABI`: "32" or "64", controllable from the command line.
* `NSIS`: installer generator, usually "/c/Program Files (x86)/NSIS/makensis".
* `DOCS_DIR`: where you have the doxygen output.
* `GCC_DIR`: root of gcc seup.
* `HOST`: argument to `--host` configure command.
* `BUILD`: build directory
* `GMP`: multi-precision package; yes, no, or the installation directory; usually in the distribution.
* `CUDD`: BDD package, usually in the distribution.
* `JAVA`: Java sdk directory, usually in the distribution.
* `PYTHON`: Python package, usually in the distribution.
* `R`: R environment package, usually in the distribution.
* `GECODE`: constraint solver package, usually not in the WIN32 distribution.
@subsection Compiling_Under_Visual_C Compiling Under Visual C++ @subsection Compiling_Under_Visual_C Compiling Under Visual C++

View File

@ -14,30 +14,47 @@
# #
# http://sourceforge.net/projects/mingwbuilds/ # http://sourceforge.net/projects/mingwbuilds/
# PS: don't install in the default location. # PS: don't install in the default location.
# mingw should avoid space in its directory, # mingw should avoid space in its directory path,
# it freaks winres out. # it freaks winres out.
# http://nsis.sourceforge.net/Main_Page # http://nsis.sourceforge.net/Main_Page
# #
# #
YHOME=/y/vsc for YHOME in /y/vsc /z /home/vsc /home/vitor /Users/vsc /u/vitor;
VERSION=6.3.4 do
#cross-compiler for OSX, see http://mxe.cc/ if test -d $YHOME/Yap
#notice that OSX does not allow WIN64 emulation (wine64) then
MXE=$HOME/Yap/mxe/usr break
# by default, compile without threads fi
THREADS=no done
# use 64 bits
ABI=64
SRC=/c/cygwin/Yap/yap-6.3 #!/bin/sh
#
# /**
#
# assumes o mingw32/mingw64 compiler
# native sh like env: msys usually, such as
# http://msys2.sourceforge.net/
#
# Major and Minor
VER="6.3"
# Patch
PATCHID="4"
# SRC in the way it loks to the script
SRC=/c/cygwin/Yap/yap-"$VER"
# the way it looks to win32
SRC_WIN="c:\\cygwin\\Yap\\yap-${VER}"
#SRC=/l/work/noth/git #SRC=/l/work/noth/git
#SRC_WIN=L:\\work\\noth\\git #SRC_WIN=L:\\work\\noth\\git
#SRC="$HOME"/git/yap-6.3 #SRC="$HOME"/git/yap-6.3
TARGET=/c/Yap64 # do we support THREADS
THREADS=no
# makes install bundle
NSIS="/c/Program Files (x86)/NSIS/makensis" NSIS="/c/Program Files (x86)/NSIS/makensis"
# by default, "" # emulator, by default, ""
PREFIX_CMD=wine PREFIX_CMD=wine
VERSION="$VER"."$PATCHID"
I=$# I=$#
while test $I -gt 0 while test $I -gt 0
do do
@ -61,16 +78,17 @@ done
# srcdir comes from here, please avoid relative paths # srcdir comes from here, please avoid relative paths
CONFIGURE="$SRC"/configure CONFIGURE="$SRC"/configure
DEBUG=" --enable-debug-yap --enable-low-level-tracer" #DEBUG=" --enable-debug-yap --enable-low-level-tracer"
DEBUG=
# debugging setup # debugging setup
do_compile=true do_compile=yes
do_install=true do_install=yes
# HOME WIN64 configuration # HOME WIN64 configuration
# DOCS_DIR=/l/work/noth/yapdocs # DOCS_DIR=/l/work/noth/yapdocs
DOCS_DIR="$YHOME"/Yap/bins/threads DOCS_DIR="$YHOME"/Yap/doxout
if test "$THREADS" = yes; then if test "$THREADS" = yes; then
FULL_VERSION="$VERSION"-threads FULL_VERSION="$VERSION"-threads
@ -79,94 +97,83 @@ else
fi fi
if test $ABI = 64; then if test $ABI = 64; then
BUILD=/c/cygwin/Yap/mingw"$ABI" TARGET=YAP64
#GCC_DIR=/l/Work/noth/mingw-w64/x86_64-4.9.0-posix-seh-rt_v3-rev1/mingw64
case $( uname ) in case $( uname ) in
*Darwin*) *Darwin*)
GCC_DIR="$MXE" GCC_DIR="$MXE"
HOST="x86_64-w64-mingw32" HOST="x86_64-w64-mingw32"
LIB_PATH="$MXE"/"$HOST"/lib BUILD=/c/cygwin/Yap/mingw"$ABI"
;; ;;
*MINGW64*) *MINGW64*)
GCC_DIR=/c/TDM-GCC-64 # GCC_DIR=/l/Work/noth/mingw-w64/x86_64-4.9.0-posix-seh-rt_v3-rev1/mingw64
# GCC_DIR=/c/TDM-GCC-64
GCC_DIR=/c/MinGW64
HOST="x86_64-w64-mingw32" HOST="x86_64-w64-mingw32"
LIB_PATH="$GCC_DIR"/"$HOST"/lib ;;
MSYS*)
# GCC_DIR=/c/TDM-GCC-64
GCC_DIR=/usr
HOST="x86_64-pc-msys"
BLD="--build=$HOST"
;; ;;
esac esac
# ok. # ok.
# BDD compiler package. Get version that compiles on Windows from Vitor! # BDD compiler package. Get version that compiles on Windows from Vitor!
# GMP=/l/Work/noth/msys/1.0/local # GMP=/l/Work/noth/msys/1.0/local
GMP=/c/msys64/usr/win64 GMP=yes #/c/msys64/usr/win64
CUDD=/c/cygwin/Yap/cudd-2.5.0-mingw64 CUDD=/c/cygwin/Yap/cudd-2.5.0-mingw64
GECODE=no # "/c/Program Files/Gecode" GECODE=no # "/c/Program Files/Gecode"
JAVA="$( echo /c/Program\ Files/Java/jdk* )" JAVA="$( echo /c/Program\ Files/Java/jdk* )"
PYTHON="/c/Python33-64" PYTHON="/c/Python33-64"
R="$( echo /c/Program\ Files/R/R-*/bin/x64 )" R="$( echo /c/Program\ Files/R/R-*/bin/x64 )"
fi
# HOME WIN32 configuration # HOME WIN32 configuration
if test $ABI = 32; then elif test $ABI = 32; then
ABI=32 TARGET=YAP
case $( uname ) in case $( uname ) in
*Darwin*) *Darwin*)
#use mxe as a cross compiler #use mxe as a cross compiler
GCC_DIR="$MXE"/bin GCC_DIR="$MXE"
PATH="$GCC_DIR":"$PATH"
HOST="i686-pc-mingw32" HOST="i686-pc-mingw32"
LIB_PATH="$MXE"/"$HOST"/lib GMP=/c/msys64/usr/win32
GECODE=no # install only allows one of 32 or 64 bits
GMP=yes
JAVA=no
PYTHON=no
REAL=no
;; ;;
esac *MINGW32*)
GCC_DIR=/mingw32
case $( uname ) in HOST="i686-w64-mingw32"
*Darwin*) GMP=yes
GCC_DIR="$MXE"
HOST="x86_64-w64-mingw32"
LIB_PATH="$MXE"/"$HOST"/lib
;;
*MINGW64*)
GCC_DIR=/c/TDM-GCC-64
HOST="x86_64-w64-mingw32"
LIB_PATH="$GCC_DIR"/"$HOST"/lib
;; ;;
esac esac
# ok. # ok.
# BDD compiler package. Get version that compiles on Windows from Vitor! # BDD compiler package. Get version that compiles on Windows from Vitor!
# GMP=/l/Work/noth/msys/1.0/local # GMP=/l/Work/noth/msys/1.0/local
GMP=/c/msys64/usr/win32
CUDD=/c/cygwin/Yap/cudd-2.5.0-mingw32 CUDD=/c/cygwin/Yap/cudd-2.5.0-mingw32
GECODE=no # "/c/Program Files/Gecode" GECODE=no # "/c/Program Files/Gecode"
JAVA="$( echo /c/Program\ Files\ */Java/jdk* )" JAVA="$( echo /c/Program\ Files\ *x86*/Java/jdk* )"
PYTHON="/c/Python27" PYTHON="/c/Python27/DLLs"
R="$( echo /c/Program\ Files/R/R-*/bin/i* )" R="$( echo /c/Program\ Files/R/R-*/bin/i* )"
HOST+=" --enable-abi=32" # HOST=" --enable-abi=32"
fi fi
export PATH="$GCC_DIR"/bin:"$PATH" export PATH="$GCC_DIR"/bin:"$PATH"
# echo "gcc= " $GCC_DIR # echo "gcc= " $GCC_DIR
# echo "host= " $HOST echo "host= " $HOST
if test x"$JAVA" != xno if test x"$JAVA" != xno
then then
export PATH="$PATH":"$JAVA"/bin export PATH="$PATH":"$JAVA"/bin
fi fi
if test x"$PYTHON" != xno if test x"$PYTHON" != xno
then then
export PATH="$PATH":"$PYTHON"/"python.exe" export PATH="$PATH":"$PYTHON"
fi fi
if test x"$R" != xno if test x"$R" != xno
then then
export PATH="$PATH":"$R" export PATH="$PATH":"$R"
fi fi
if test ${THREADS} = yes if test x${THREADS} != xno
then then
cp "$LIB_PATH"/libwinpthread-1.dll . cp "$DLL_PATH"/libwinpthread-1.dll .
cp "$DLL_PATH=gmp*.dll .
cp libwinpthread-1.dll pthreadGC2.dll cp libwinpthread-1.dll pthreadGC2.dll
fi fi
@ -185,7 +192,7 @@ then
export PATH="$PATH":"$GECODE"/bin export PATH="$PATH":"$GECODE"/bin
fi fi
if test "$JAVA" = yes if test x"$JAVA" != xno
then then
export PATH="$PATH":"$JAVA"/bin export PATH="$PATH":"$JAVA"/bin
fi fi
@ -210,44 +217,45 @@ then
make distclean make distclean
fi fi
export INSTALL_SH=$SRC/yap-6.3/install.sh export INSTALL_SH=$SRC/yap-"$VERSION"/install.sh
# avoid using relative paths # avoid using relative paths
if test "$do_compile" = true; then if test "$do_compile" = true; then
BUILD=/c/cygwin/Yap/mingw"$ABI" BUILD=/c/cygwin/Yap/mingw"$ABI"
mkdir -p "$BUILD" mkdir -p "$BUILD"
cd "$BUILD"
# make distclean
# /bin/rm -rf "$BUILD"/* # /bin/rm -rf "$BUILD"/*
"$CONFIGURE" --host="$HOST" \ "$CONFIGURE" --host="$HOST" "$BLD" \
--prefix="$TARGET" $DEBUG\ --prefix=/c/"$TARGET" $DEBUG\
--with-R="$R" \ --with-R="$R" \
--with-java="$JAVA" \ --with-java="$JAVA" \
--with-gmp="$GMP" \ --with-gmp="$GMP" \
--with-python="$PYTHON" \ --with-python="$PYTHON"/python.exe \
--with-cudd="$CUDD" --enable-bddlib="$BDDLIB" --with-cplint="$CPLINT" \ --with-cudd="$CUDD" --enable-bddlib="$BDDLIB" --with-cplint="$CPLINT" \
--with-gecode="$GECODE" \ --with-gecode="$GECODE" \
--enable-threads="$THREADS" --enable-pthread-locking --enable-threads="$THREADS" --enable-pthread-locking
make #-j 4 install make #-j 4 install
fi fi
if test "$do_install" = true; then if test "$do_install" = yes; then
make install
cp -a $DOCS_DIR/html /c/$TARGET/share/doc/Yap
cp $DOCS_DIR/latex/*pdf /c/$TARGET/share/doc/Yap
if test $ABI = 64; then if test $ABI = 64; then
cp $DOCS_DIR/*html $TARGET/share/doc/Yap
cp $DOCS_DIR/*pdf $TARGET/share/doc/Yap
"$NSIS" -DREGKEY=SOFTWARE\\YAP\\Prolog64 \ "$NSIS" -DREGKEY=SOFTWARE\\YAP\\Prolog64 \
-DROOTDIR=$TARGET \ -DROOTDIR=/c/$TARGET \
-DABI="$ABI" \ -DABI="$ABI" \
-DVERSION="$FULL_VERSION" \ -DVERSION="$FULL_VERSION" \
-DOPTIONS="$SRC_WIN\\misc\\options.ini" \ -DOPTIONS="$SRC_WIN\\misc\\options.ini" \
-DOUT_DIR=".." -D"WIN64=1" \ -DOUT_DIR=".." -D"WIN64=1" \
-NOCD $SRC/yap-6.3/misc/Yap.nsi -NOCD $SRC/misc/Yap.nsi
else else
cp $DOCS_DIR/*html $TARGET/share/doc/Yap
cp $DOCS_DIR/*pdf $TARGET/share/doc/Yap
"$NSIS" -DREGKEY=SOFTWARE\\YAP\\Prolog \ "$NSIS" -DREGKEY=SOFTWARE\\YAP\\Prolog \
-DROOTDIR=$TARGET \ -DROOTDIR=/c/$TARGET\
-DABI="$ABI" \ -DABI="$ABI" \
-DVERSION="$FULL_VERSION" \ -DVERSION="$FULL_VERSION" \
-DOPTIONS="$SRC_WIN\\misc\\options.ini" \ -DOPTIONS="$SRC_WIN\\misc\\options.ini" \
-DOUT_DIR=".." \ -DOUT_DIR=".." \
-NOCD $SRC/yap-6.3/misc/Yap.nsi -NOCD $SRC/misc/Yap.nsi
fi fi
fi fi

View File

@ -14,7 +14,7 @@ SetCompressor /FINAL bzip2
; Preload files that are needed by the installer itself ; Preload files that are needed by the installer itself
ReserveFile "${NSISDIR}\Plugins\x86-unicode\UserInfo.dll" ReserveFile "${NSISDIR}\Plugins\x86-unicode\UserInfo.dll"
ReserveFile "${NSISDIR}\Plugins\\x86-unicode\InstallOptions.dll" ReserveFile "${NSISDIR}\Plugins\x86-unicode\InstallOptions.dll"
ReserveFile "${OPTIONS}" ReserveFile "${OPTIONS}"
!ifdef WIN64 !ifdef WIN64
@ -72,8 +72,8 @@ Section "Base system (required)"
File /r ${ROOTDIR}\share\Yap\* File /r ${ROOTDIR}\share\Yap\*
SetOutPath $INSTDIR\share\doc\Yap SetOutPath $INSTDIR\share\doc\Yap
File ${ROOTDIR}\share\doc\Yap\yap.html File ${ROOTDIR}\share\doc\Yap\html\index.html
File ${ROOTDIR}\share\doc\Yap\yap.pdf ; File ${ROOTDIR}\share\doc\Yap\refman.pdf
; File ${ROOTDIR}\share\doc\Yap\yap.info ; File ${ROOTDIR}\share\doc\Yap\yap.info
File ${ROOTDIR}\share\doc\Yap\Artistic File ${ROOTDIR}\share\doc\Yap\Artistic
File ${ROOTDIR}\share\doc\Yap\README.TXT File ${ROOTDIR}\share\doc\Yap\README.TXT
@ -120,13 +120,13 @@ Section "Start Menu shortcuts"
"$INSTDIR\share\doc\Yap\README.TXT" 0 \ "$INSTDIR\share\doc\Yap\README.TXT" 0 \
"SW_SHOWNORMAL" "" "View readme" "SW_SHOWNORMAL" "" "View readme"
CreateShortCut "$SMPROGRAMS\${GRP}\Manual Html.lnk" \ CreateShortCut "$SMPROGRAMS\${GRP}\Manual Html.lnk" \
"$INSTDIR\share\doc\Yap\yap.html" "" \ "$INSTDIR\share\doc\Yap\html\index.html" "" \
"$INSTDIR\share\doc\Yap\yap.html" 0 \ "$INSTDIR\share\doc\Yap\html\index.html" 0 \
"SW_SHOWNORMAL" "" "View readme"
CreateShortCut "$SMPROGRAMS\${GRP}\Manual PDF.lnk" \
"$INSTDIR\share\doc\Yap\yap.pdf" "" \
"$INSTDIR\share\doc\Yap\yap.pdf" 0 \
"SW_SHOWNORMAL" "" "View readme" "SW_SHOWNORMAL" "" "View readme"
; CreateShortCut "$SMPROGRAMS\${GRP}\Manual PDF.lnk" \
; "$INSTDIR\share\doc\Yap\refman.pdf" "" \
; "$INSTDIR\share\doc\Yap\refman.pdf" 0 \
; "SW_SHOWNORMAL" "" "View readme"
CreateShortCut "$SMPROGRAMS\${GRP}\Uninstall.lnk" \ CreateShortCut "$SMPROGRAMS\${GRP}\Uninstall.lnk" \
"$INSTDIR\uninstall.exe" \ "$INSTDIR\uninstall.exe" \
"" \ "" \

View File

@ -50,7 +50,7 @@ elif test -d "$cudd_dir/lib"; then
LIBS="$LIBS -L $cudd_dir/lib" LIBS="$LIBS -L $cudd_dir/lib"
fi fi
if test "$target_os" = "mingw32" -o "$target_os" = "mingw64" if test "$target_os" = "mingw32" -o "$target_os" = "mingw64" -o "$target_os" = "msys"
then then
#mingw: we know where things are #mingw: we know where things are
CUDD_LIBS="$cudd_dir/lib/all_cudd.dll" CUDD_LIBS="$cudd_dir/lib/all_cudd.dll"

View File

@ -201,3 +201,4 @@ test%:
distclean: clean distclean: clean
rm -f Makefile rm -f Makefile

View File

@ -52,3 +52,6 @@ clean:
install: default install: default
$(INSTALL_PROGRAM) LPADBDD $(DESTDIR) $(INSTALL_PROGRAM) LPADBDD $(DESTDIR)
distclean: clean
rm -f Makefile