Making ATS platform independent

I apologize if this question has been asked before, but what needs to be
done to make ATS platform Independent? I have somewhat modified the shell
scripts that get installed in ${prefix}/bin so that they are only dependent
on the relative install location to the binaries. what other gotchas are
hiding in the patsopt and patscc binaries? I haven’t poked the source yet,
and would like to hold off on that till as late as possible.

#!/bin/sh

Author: Likai Liu (likai AT cs DOT bu DOT edu)

Author2: Hongwei Xi (gmhwxi AT gmail DOT com) // September, 2013

PACKAGE_TARNAME=ats2-postiats
PACKAGE_VERSION=0.2.2
prefix="$( cd “$(dirname “$0”)”; cd …; pwd -P)"

if [ ! “$PATSHOME” ] ; then
export PATSHOME="$prefix/lib/${PACKAGE_TARNAME}-${PACKAGE_VERSION}"
fi

if [ ! -d “$PATSHOME” ] ; then
echo “ATS-Postiats should have been available at ‘${PATSHOME}’”; exit 1
fi

prog=basename $0

case $prog in
patscc)
PATH=PATH:"${PATSHOME}/bin"
exec “$PATSHOME/bin/$prog” “$@”
;;
*)
echo "This is a script for patscc."
echo "The script should be symbolically named as [patscc]."
exit 1
;;
esac

end of [patscc_env.sh.in]

You can do testing like this:

cd ${PATSHOME_contrib} # where ats2-contrib is stored
make -f Makefile_test testallOn Wednesday, September 9, 2015 at 2:04:17 PM UTC-4, James Mahoney wrote:

I do have it installed as well, I did (on cygwin, with the required libs):

./configure --prefix=/cygdrive/c/build && make all && make install

I also have installed ats2-contrib in the suggested location as well.
are there any tests I can run to ensure that I haven’t borked something?

On Wednesday, 9 September 2015 11:25:33 UTC-4, gmhwxi wrote:

Patscc is just a convenience wrapper around patsopt.

In order to run patsopt, your minimal need is to have the ATS prelude
library installed
at ${PATSHOME}/prelude.

On Wednesday, September 9, 2015 at 9:16:46 AM UTC-4, James Mahoney wrote:

I apologize if this question has been asked before, but what needs to be
done to make ATS platform Independent? I have somewhat modified the shell
scripts that get installed in ${prefix}/bin so that they are only dependent
on the relative install location to the binaries. what other gotchas are
hiding in the patsopt and patscc binaries? I haven’t poked the source yet,
and would like to hold off on that till as late as possible.

#!/bin/sh

Author: Likai Liu (likai AT cs DOT bu DOT edu)

Author2: Hongwei Xi (gmhwxi AT gmail DOT com) // September, 2013

PACKAGE_TARNAME=ats2-postiats
PACKAGE_VERSION=0.2.2
prefix=“$( cd “$(dirname “$0”)”; cd …; pwd -P)”

if [ ! “$PATSHOME” ] ; then
export PATSHOME=“$prefix/lib/${PACKAGE_TARNAME}-${PACKAGE_VERSION}”
fi

if [ ! -d “$PATSHOME” ] ; then
echo “ATS-Postiats should have been available at ‘${PATSHOME}’”; exit 1
fi

prog=basename $0

case $prog in
patscc)
PATH=PATH:“${PATSHOME}/bin”
exec “$PATSHOME/bin/$prog” “$@”
;;
*)
echo “This is a script for patscc.”
echo “The script should be symbolically named as [patscc].”
exit 1
;;
esac

end of [patscc_env.sh.in]

I do have it installed as well, I did (on cygwin, with the required libs):

./configure --prefix=/cygdrive/c/build && make all && make install

I also have installed ats2-contrib in the suggested location as well.
are there any tests I can run to ensure that I haven’t borked something?On Wednesday, 9 September 2015 11:25:33 UTC-4, gmhwxi wrote:

Patscc is just a convenience wrapper around patsopt.

In order to run patsopt, your minimal need is to have the ATS prelude
library installed
at ${PATSHOME}/prelude.

On Wednesday, September 9, 2015 at 9:16:46 AM UTC-4, James Mahoney wrote:

I apologize if this question has been asked before, but what needs to be
done to make ATS platform Independent? I have somewhat modified the shell
scripts that get installed in ${prefix}/bin so that they are only dependent
on the relative install location to the binaries. what other gotchas are
hiding in the patsopt and patscc binaries? I haven’t poked the source yet,
and would like to hold off on that till as late as possible.

#!/bin/sh

Author: Likai Liu (likai AT cs DOT bu DOT edu)

Author2: Hongwei Xi (gmhwxi AT gmail DOT com) // September, 2013

PACKAGE_TARNAME=ats2-postiats
PACKAGE_VERSION=0.2.2
prefix=“$( cd “$(dirname “$0”)”; cd …; pwd -P)”

if [ ! “$PATSHOME” ] ; then
export PATSHOME=“$prefix/lib/${PACKAGE_TARNAME}-${PACKAGE_VERSION}”
fi

if [ ! -d “$PATSHOME” ] ; then
echo “ATS-Postiats should have been available at ‘${PATSHOME}’”; exit 1
fi

prog=basename $0

case $prog in
patscc)
PATH=PATH:“${PATSHOME}/bin”
exec “$PATSHOME/bin/$prog” “$@”
;;
*)
echo “This is a script for patscc.”
echo “The script should be symbolically named as [patscc].”
exit 1
;;
esac

end of [patscc_env.sh.in]

Patscc is just a convenience wrapper around patsopt.

In order to run patsopt, your minimal need is to have the ATS prelude
library installed
at ${PATSHOME}/prelude.On Wednesday, September 9, 2015 at 9:16:46 AM UTC-4, James Mahoney wrote:

I apologize if this question has been asked before, but what needs to be
done to make ATS platform Independent? I have somewhat modified the shell
scripts that get installed in ${prefix}/bin so that they are only dependent
on the relative install location to the binaries. what other gotchas are
hiding in the patsopt and patscc binaries? I haven’t poked the source yet,
and would like to hold off on that till as late as possible.

#!/bin/sh

Author: Likai Liu (likai AT cs DOT bu DOT edu)

Author2: Hongwei Xi (gmhwxi AT gmail DOT com) // September, 2013

PACKAGE_TARNAME=ats2-postiats
PACKAGE_VERSION=0.2.2
prefix=“$( cd “$(dirname “$0”)”; cd …; pwd -P)”

if [ ! “$PATSHOME” ] ; then
export PATSHOME=“$prefix/lib/${PACKAGE_TARNAME}-${PACKAGE_VERSION}”
fi

if [ ! -d “$PATSHOME” ] ; then
echo “ATS-Postiats should have been available at ‘${PATSHOME}’”; exit 1
fi

prog=basename $0

case $prog in
patscc)
PATH=PATH:“${PATSHOME}/bin”
exec “$PATSHOME/bin/$prog” “$@”
;;
*)
echo “This is a script for patscc.”
echo “The script should be symbolically named as [patscc].”
exit 1
;;
esac

end of [patscc_env.sh.in]