summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSebastien Fabbro <bicatali@gentoo.org>2008-04-11 11:29:59 +0000
committerSebastien Fabbro <bicatali@gentoo.org>2008-04-11 11:29:59 +0000
commitd34f8ae3af7dd65a95c21a56c00f5a0e8d0268f9 (patch)
tree1fcf21cad04c47da65cae2b875b2b9c3a5e7e6fa /sci-astronomy/skycat
parentVersion bump, reverting some Debian changes breaking standard DESTDIR. (diff)
downloadgentoo-2-d34f8ae3af7dd65a95c21a56c00f5a0e8d0268f9.tar.gz
gentoo-2-d34f8ae3af7dd65a95c21a56c00f5a0e8d0268f9.tar.bz2
gentoo-2-d34f8ae3af7dd65a95c21a56c00f5a0e8d0268f9.zip
Initial import. Closes bug #65665.
(Portage version: 2.1.5_rc2)
Diffstat (limited to 'sci-astronomy/skycat')
-rw-r--r--sci-astronomy/skycat/ChangeLog11
-rw-r--r--sci-astronomy/skycat/Manifest6
-rw-r--r--sci-astronomy/skycat/files/skycat-3.0.1-gcc41.patch374
-rw-r--r--sci-astronomy/skycat/files/skycat-3.0.1-m4.patch141
-rw-r--r--sci-astronomy/skycat/metadata.xml10
-rw-r--r--sci-astronomy/skycat/skycat-3.0.1.ebuild50
6 files changed, 592 insertions, 0 deletions
diff --git a/sci-astronomy/skycat/ChangeLog b/sci-astronomy/skycat/ChangeLog
new file mode 100644
index 000000000000..0a4975777af9
--- /dev/null
+++ b/sci-astronomy/skycat/ChangeLog
@@ -0,0 +1,11 @@
+# ChangeLog for sci-astronomy/skycat
+# Copyright 1999-2008 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/sci-astronomy/skycat/ChangeLog,v 1.1 2008/04/11 11:29:58 bicatali Exp $
+
+*skycat-3.0.1 (11 Apr 2008)
+
+ 11 Apr 2008; Sébastien Fabbro <bicatali@gentoo.org>
+ +files/skycat-3.0.1-gcc41.patch, +files/skycat-3.0.1-m4.patch,
+ +metadata.xml, +skycat-3.0.1.ebuild:
+ Initial import. Closes bug #65665.
+
diff --git a/sci-astronomy/skycat/Manifest b/sci-astronomy/skycat/Manifest
new file mode 100644
index 000000000000..f84e0cb6fda8
--- /dev/null
+++ b/sci-astronomy/skycat/Manifest
@@ -0,0 +1,6 @@
+AUX skycat-3.0.1-gcc41.patch 13122 RMD160 0ce827b1cdb1a19f3fabcdfc8c75116c8e8602a0 SHA1 15db003a5b687401a54363707189ce9c8718c0c6 SHA256 a7d839d9975cb82bbec8c8cd50847ce6afe81323a206793bc8349ee11ec22c68
+AUX skycat-3.0.1-m4.patch 4791 RMD160 643951b4bec86dfae40687eaa4d10969ff39c8e4 SHA1 48a4826349b6c905cae1130c47bd5c1757500d88 SHA256 08ad86b09220ab931264d7d7ec145193abec39d1ab168e3f4853696f5ef48f76
+DIST skycat-3.0.1.tar.gz 3175379 RMD160 38abe19c590b7b2413a749024df9f5136d701008 SHA1 89d2417915ca59934baa491b039137ab32208af0 SHA256 cfaede46a125adebe61af84c9fb0ac89b3d450d748915ee7761678df6c48b884
+EBUILD skycat-3.0.1.ebuild 1127 RMD160 32da28e7e5e9704b2f4b22ea5397aa5f99d814e1 SHA1 1caaad1806090ef0e90786f34be02a3221725f34 SHA256 fd3a1372334603c9d6ef25ce2a719ac2e334cbfb1d704e971525f156ee8bd8b5
+MISC ChangeLog 347 RMD160 b393db928635fdb6df4f3fbaf3e723efc28d8118 SHA1 be9dc51fa1f677155f8eb99e7af5ea3789cdce95 SHA256 ac91d7f7ee41a476024d15c24707c10988db2b08ee24da6cb8eaaf0b717ff244
+MISC metadata.xml 374 RMD160 0b13913c5e501a31bed1eb36c4d706ac1c24a3c2 SHA1 9cc1a6ff766256ef07d4c438259dc7ed8595e36b SHA256 f011744f479399f80943e8c7b6499ccc47410a0fbbbee51cd25898b12bbfa729
diff --git a/sci-astronomy/skycat/files/skycat-3.0.1-gcc41.patch b/sci-astronomy/skycat/files/skycat-3.0.1-gcc41.patch
new file mode 100644
index 000000000000..53284a650825
--- /dev/null
+++ b/sci-astronomy/skycat/files/skycat-3.0.1-gcc41.patch
@@ -0,0 +1,374 @@
+--- astrotcl/generic/Fits_IO.h.orig 2006-01-12 16:43:52.000000000 +0000
++++ astrotcl/generic/Fits_IO.h 2006-09-14 11:34:20.000000000 +0100
+@@ -49,7 +49,7 @@
+ // extend the size of the FITS header by one header block
+ int extendHeader();
+
+- static void* FitsIO::reallocFile(void* p, size_t newsize);
++ static void* reallocFile(void* p, size_t newsize);
+
+ protected:
+ // Check that this object represents a FITS file (and not just some kind of memory)
+--- rtd/generic/ImageData.h.orig 2006-01-12 16:39:00.000000000 +0000
++++ rtd/generic/ImageData.h 2006-09-14 11:36:42.000000000 +0100
+@@ -348,16 +348,16 @@
+ int getSpectrum(double* xyvalues, int x0, int y0, int x1, int y1);
+
+ // get meander coords of a horizontal line at position y (index starting at 0)
+- int ImageData::getXline4(int y, int x0, int x1, double *xyvalues);
++ int getXline4(int y, int x0, int x1, double *xyvalues);
+
+ // same as getXline4 but with specified x ranges (start xr0, delta dxr)
+- int ImageData::getXline4(int y, int x0, int x1, double *xyvalues, double xr0, double dxr);
++ int getXline4(int y, int x0, int x1, double *xyvalues, double xr0, double dxr);
+
+ // get meander coords of a vertical line at position x (index starting at 0)
+- int ImageData::getYline4(int x, int y0, int y1, double *xyvalues);
++ int getYline4(int x, int y0, int y1, double *xyvalues);
+
+ // Return the image coords of the visible image area (bounding box)
+- void ImageData::getBbox(double *x0, double *x1, double *y0, double *y1);
++ void getBbox(double *x0, double *x1, double *y0, double *y1);
+
+ // get min and max values of an image area
+ int getMinMax(double rx0, double ry0, int w, int h, double *minval, double *maxval);
+--- rtd/generic/ImageDisplay.h.orig 2006-01-12 16:39:29.000000000 +0000
++++ rtd/generic/ImageDisplay.h 2006-09-14 11:35:30.000000000 +0100
+@@ -78,7 +78,7 @@
+ }
+
+ // flush X output buffer
+- void ImageDisplay::flushX();
++ void flushX();
+
+ // other info
+ int width() {return xImage_ ? xImage_->width : 0;}
+--- rtd/generic/RtdCamera.h.orig 2006-01-12 16:39:14.000000000 +0000
++++ rtd/generic/RtdCamera.h 2006-09-14 11:39:21.000000000 +0100
+@@ -48,7 +48,7 @@
+ public:
+
+ // constructor
+- RtdCamera::RtdCamera(
++ RtdCamera(
+ const char* name,
+ Tcl_Interp*,
+ int verbose,
+@@ -56,64 +56,64 @@
+ char* image = "RtdCamera");
+
+ // destructor
+- virtual RtdCamera::~RtdCamera();
++ virtual ~RtdCamera();
+
+ // static file handler, called by Tk file handler for realtime image events
+- static void RtdCamera::fileEventProc(ClientData, int mask);
++ static void fileEventProc(ClientData, int mask);
+
+ // start/stop/pause or continue accepting images
+- int RtdCamera::start(const char* cameraName);
+- int RtdCamera::stop();
+- int RtdCamera::pause();
+- int RtdCamera::cont();
++ int start(const char* cameraName);
++ int stop();
++ int pause();
++ int cont();
+
+ // return camera name
+- char* RtdCamera::camera() {return camera_;}
++ char* camera() {return camera_;}
+
+ // Add timestamp in performance tool.
+- void RtdCamera::timeStamp(char *evDesc);
++ void timeStamp(char *evDesc);
+
+ // update global variables
+- int RtdCamera::updateGlobals();
++ int updateGlobals();
+
+ // check if camera is attached
+- int RtdCamera::attached();
++ int attached();
+
+ protected:
+
+ // member called by fileEventProc for image events
+- int RtdCamera::fileEvent();
++ int fileEvent();
+
+ // cleanup image events in the socket queue
+- void RtdCamera::cleanup();
++ void cleanup();
+
+ // called to display new image from shared memory
+ // (defined in a derived class)
+- virtual int RtdCamera::display(const rtdIMAGE_INFO&, const Mem& data) = 0;
++ virtual int display(const rtdIMAGE_INFO&, const Mem& data) = 0;
+
+ // set camera name
+- void RtdCamera::camera(const char *camera) {strcpy(camBuf_, camera);}
++ void camera(const char *camera) {strcpy(camBuf_, camera);}
+
+ // create/delete the Tcl file handler
+- void RtdCamera::fileHandler(int create);
++ void fileHandler(int create);
+
+ // disconnect from camera
+- void RtdCamera::disconnect();
++ void disconnect();
+
+ // Decrement the semaphore
+- void RtdCamera::semDecr();
++ void semDecr();
+
+ // check if rtdServer is alive
+- void RtdCamera::rtdServerCheck();
++ void rtdServerCheck();
+
+ // check status after image event failure
+- void RtdCamera::checkStat();
++ void checkStat();
+
+ // start accepting events from the camera
+- int RtdCamera::attach(const char* camera);
++ int attach(const char* camera);
+
+ // check image type
+- int RtdCamera::checkType(int type);
++ int checkType(int type);
+
+ Tcl_Interp* interp_; // Tcl interp (for file events, error handling)
+ rtdIMAGE_EVT_HNDL* eventHndl_; // image event handle
+@@ -133,9 +133,9 @@
+
+ // -- short cuts --
+
+- int RtdCamera::connected() {return connected_;}
+- void RtdCamera::connected(int set) {connected_ = set; }
+- void RtdCamera::attached(int set) {attached_ = set; }
++ int connected() {return connected_;}
++ void connected(int set) {connected_ = set; }
++ void attached(int set) {attached_ = set; }
+ };
+
+ #endif /* _RtdCamera_h_ */
+--- rtd/generic/RtdImage.h.orig 2006-01-12 16:39:28.000000000 +0000
++++ rtd/generic/RtdImage.h 2006-09-14 11:47:08.000000000 +0100
+@@ -428,7 +428,7 @@
+ static int rtd_set_cmap(ClientData, Tcl_Interp* interp, int argc, char** argv);
+
+ // update idle tasks and performance test variables
+- void RtdImage::updateRequests();
++ void updateRequests();
+
+ // read-only access to configuration options
+ static ImageColor* colors() {return colors_;}
+--- rtd/generic/RtdPerf.h.orig 2006-01-12 16:39:21.000000000 +0000
++++ rtd/generic/RtdPerf.h 2006-09-14 11:40:28.000000000 +0100
+@@ -23,42 +23,42 @@
+
+ public:
+ // Constructor
+- RtdPerf::RtdPerf(Tcl_Interp* interp);
++ RtdPerf(Tcl_Interp* interp);
+
+ // Destructor
+- RtdPerf::~RtdPerf();
++ ~RtdPerf();
+
+ // Add delta time to 'timevar'
+- void RtdPerf::timeInc(double *timevar);
++ void timeInc(double *timevar);
+
+ // Start a new cycle
+- void RtdPerf::newCycle();
++ void newCycle();
+
+ // End a cycle and set the Tcl global variables
+- void RtdPerf::endCycle();
++ void endCycle();
+
+ // Reset the time variables and Tcl global variables
+- void RtdPerf::reset();
++ void reset();
+
+ // Switch performance test on
+- void RtdPerf::on() {maybeOn_ = 1; on_ = 0;}
+- void RtdPerf::on(int set) {on_ = set;}
++ void on() {maybeOn_ = 1; on_ = 0;}
++ void on(int set) {on_ = set;}
+
+ // Switch performance test on
+- void RtdPerf::off() {maybeOn_ = 0; on_ = 0;}
++ void off() {maybeOn_ = 0; on_ = 0;}
+
+ // Set verbose and debug flag
+- void RtdPerf::verbose(int set) {verbose_ = set;}
+- void RtdPerf::debug(int set) {debug_ = set;}
++ void verbose(int set) {verbose_ = set;}
++ void debug(int set) {debug_ = set;}
+
+ // Set the instance name of the RtdImage (used for global Tcl variables)
+- void RtdPerf::name(char *nam) {strcpy(name_, nam);}
++ void name(char *nam) {strcpy(name_, nam);}
+
+ // -- short cuts --
+
+- void RtdPerf::GENtime() {timeInc(&GENtime_);}
+- void RtdPerf::TCLtime() {timeInc(&TCLtime_);}
+- void RtdPerf::Xtime() {timeInc(&Xtime_);}
++ void GENtime() {timeInc(&GENtime_);}
++ void TCLtime() {timeInc(&TCLtime_);}
++ void Xtime() {timeInc(&Xtime_);}
+
+ protected:
+ RtdDebugLog *dbl_; // debug log object
+@@ -84,9 +84,9 @@
+
+ // -- short cuts --
+
+- char* RtdPerf::name() {return(name_);}
+- int RtdPerf::isOn() {return on_;}
+- int RtdPerf::maybeOn() {return maybeOn_;}
++ char* name() {return(name_);}
++ int isOn() {return on_;}
++ int maybeOn() {return maybeOn_;}
+ };
+
+ #endif /* _RtdPerf_h_ */
+--- rtd/generic/RtdUtils.h.orig 2006-01-12 16:39:16.000000000 +0000
++++ rtd/generic/RtdUtils.h 2006-09-14 11:37:32.000000000 +0100
+@@ -28,11 +28,11 @@
+ class RtdDebugLog {
+ public:
+
+- RtdDebugLog::RtdDebugLog(char *nam, int debug);
++ RtdDebugLog(char *nam, int debug);
+
+- void RtdDebugLog::log(const char *format, ...);
+- void RtdDebugLog::setlog(int set) {debug_ = set;}
+- int RtdDebugLog::setlog() {return debug_;}
++ void log(const char *format, ...);
++ void setlog(int set) {debug_ = set;}
++ int setlog() {return debug_;}
+
+ protected:
+ char name_[100]; // name of application
+--- rtd/rtdevt/rtdCLNT.h.orig 2006-01-12 16:40:00.000000000 +0000
++++ rtd/rtdevt/rtdCLNT.h 2006-09-14 11:51:56.000000000 +0100
+@@ -40,52 +40,52 @@
+ ~rtdCLNT();
+
+ // store/return the name of the requestor
+- char *rtdCLNT::ReqName() { return reqName_; }
+- void rtdCLNT::ReqName(char *name) { strncpy (reqNameBuf_, name, RTD_NAMELEN); }
++ char *ReqName() { return reqName_; }
++ void ReqName(char *name) { strncpy (reqNameBuf_, name, RTD_NAMELEN); }
+
+ // store/return the name of the camera
+- char *rtdCLNT::CamName() { return camName_; }
+- void rtdCLNT::CamName(char *name) { strncpy (camNameBuf_, name, RTD_NAMELEN); }
++ char *CamName() { return camName_; }
++ void CamName(char *name) { strncpy (camNameBuf_, name, RTD_NAMELEN); }
+
+ // store/return the name of the socket file descriptor
+- int rtdCLNT::Socket() { return socket_; }
+- void rtdCLNT::Socket(int socket) { socket_ = socket; }
++ int Socket() { return socket_; }
++ void Socket(int socket) { socket_ = socket; }
+
+ // return the semaphore params set by the requestor
+- int rtdCLNT::semId() { return semId_; }
++ int semId() { return semId_; }
+
+ // return the number of semaphores
+- int rtdCLNT::shmNum() { return shmNum_; }
++ int shmNum() { return shmNum_; }
+
+ // set the values for semId and shmNum
+- void rtdCLNT::SetSemPar(int semId, int shmNum);
++ void SetSemPar(int semId, int shmNum);
+
+ // store/return the index
+- int rtdCLNT::Index() { return index_; }
+- void rtdCLNT::Index(int index) { index_ = index; }
++ int Index() { return index_; }
++ void Index(int index) { index_ = index; }
+
+ // store/return the port number
+- int rtdCLNT::Port() { return port_; }
+- void rtdCLNT::Port(int port) { port_ = port; }
++ int Port() { return port_; }
++ void Port(int port) { port_ = port; }
+
+ // store/return the type number
+- int rtdCLNT::Type() { return type_; }
+- void rtdCLNT::Type(int type) { type_ = type; }
++ int Type() { return type_; }
++ void Type(int type) { type_ = type; }
+
+ // clear a buffer
+- void rtdCLNT::BufClear(char *name) { memset (name, '\0', RTD_NAMELEN); }
++ void BufClear(char *name) { memset (name, '\0', RTD_NAMELEN); }
+
+ // are we attched?
+- int rtdCLNT::Attached() { return (*reqName_ == '\0' || *camName_ == '\0'); }
++ int Attached() { return (*reqName_ == '\0' || *camName_ == '\0'); }
+
+- void rtdCLNT::Attach(char* reqName, char *camName);
+- void rtdCLNT::Detach();
++ void Attach(char* reqName, char *camName);
++ void Detach();
+
+- int rtdCLNT::Forward(rtdPACKET *rtdPacket);
+- void rtdCLNT::Cleanup();
+- int rtdCLNT::Accept(int listenSocket);
+- int rtdCLNT::AttachedToCamera(char *camera);
+- char *rtdCLNT::TypeName();
++ int Forward(rtdPACKET *rtdPacket);
++ void Cleanup();
++ int Accept(int listenSocket);
++ int AttachedToCamera(char *camera);
++ char *TypeName();
+
+ private:
+ char *reqName_; // name of requestor
+--- rtd/rtdevt/rtdLOG.h.orig 2006-01-12 16:39:54.000000000 +0000
++++ rtd/rtdevt/rtdLOG.h 2006-09-14 11:51:06.000000000 +0100
+@@ -24,8 +24,8 @@
+ rtdLOG(int);
+ ~rtdLOG();
+
+- void rtdLOG::log(const char *format, ...);
+- int rtdLOG::Verbose() { return verbose_; }
++ void log(const char *format, ...);
++ int Verbose() { return verbose_; }
+
+ private:
+ int verbose_;
+--- rtd/rtdevt/rtdSERVER.h.orig 2006-01-12 16:39:57.000000000 +0000
++++ rtd/rtdevt/rtdSERVER.h 2006-09-14 11:52:24.000000000 +0100
+@@ -39,15 +39,15 @@
+ rtdSERVER(int, int, int);
+ ~rtdSERVER();
+
+- int rtdSERVER::Loop();
++ int Loop();
+
+ protected:
+- rtdCLNT *rtdSERVER::GetCurrClient();
+- void rtdSERVER::ServImageCmd(rtdPACKET *rtdPacket);
+- void rtdSERVER::ServStatusCmd(int socket);
+- int rtdSERVER::IncrSem(rtdPACKET *rtdPacket, int increment);
+- rtdCLNT *rtdSERVER::Accept();
+- void rtdSERVER::DisconnectClient(rtdCLNT *client);
++ rtdCLNT *GetCurrClient();
++ void ServImageCmd(rtdPACKET *rtdPacket);
++ void ServStatusCmd(int socket);
++ int IncrSem(rtdPACKET *rtdPacket, int increment);
++ rtdCLNT *Accept();
++ void DisconnectClient(rtdCLNT *client);
+
+ private:
+ int socketFd_; // listen socket
diff --git a/sci-astronomy/skycat/files/skycat-3.0.1-m4.patch b/sci-astronomy/skycat/files/skycat-3.0.1-m4.patch
new file mode 100644
index 000000000000..914b0ebadf05
--- /dev/null
+++ b/sci-astronomy/skycat/files/skycat-3.0.1-m4.patch
@@ -0,0 +1,141 @@
+--- tclconfig/tcl.m4.orig 2006-02-01 22:10:36.000000000 +0000
++++ tclconfig/tcl.m4 2006-09-14 11:23:20.000000000 +0100
+@@ -731,6 +731,50 @@
+ ])
+
+ #--------------------------------------------------------------------
++# TEA_CONFIG_SYSTEM
++#
++# Determine what the system is (some things cannot be easily checked
++# on a feature-driven basis, alas). This can usually be done via the
++# "uname" command, but there are a few systems, like Next, where
++# this doesn't work.
++#
++# Arguments:
++# none
++#
++# Results:
++# Defines the following var:
++#
++# system - System/platform/version identification code.
++#
++#--------------------------------------------------------------------
++
++AC_DEFUN(TEA_CONFIG_SYSTEM, [
++ AC_MSG_CHECKING([system version])
++ AC_CACHE_VAL(tcl_cv_sys_version,[
++ if test -f /usr/lib/NextStep/software_version; then
++ tcl_cv_sys_version=NEXTSTEP-`awk '/3/,/3/' /usr/lib/NextStep/software_version`
++ else
++ tcl_cv_sys_version=`uname -s`-`uname -r`
++ if test "$?" -ne 0 ; then
++ AC_MSG_WARN([can't find uname command])
++ tcl_cv_sys_version=unknown
++ else
++ # Special check for weird MP-RAS system (uname returns weird
++ # results, and the version is kept in special file).
++
++ if test -r /etc/.relid -a "X`uname -n`" = "X`uname -s`" ; then
++ tcl_cv_sys_version=MP-RAS-`awk '{print $3}' /etc/.relid`
++ fi
++ if test "`uname -s`" = "AIX" ; then
++ tcl_cv_sys_version=AIX-`uname -v`.`uname -r`
++ fi
++ fi
++ fi])
++ AC_MSG_RESULT($tcl_cv_sys_version)
++ system=$tcl_cv_sys_version
++])
++
++#--------------------------------------------------------------------
+ # TEA_CONFIG_CFLAGS
+ #
+ # Try to determine the proper flags to pass to the compiler
+@@ -849,30 +893,7 @@
+ # for the system. This can usually be done via the "uname" command, but
+ # there are a few systems, like Next, where this doesn't work.
+
+- AC_MSG_CHECKING([system version (for dynamic loading)])
+- if test -f /usr/lib/NextStep/software_version; then
+- system=NEXTSTEP-`awk '/3/,/3/' /usr/lib/NextStep/software_version`
+- else
+- system=`uname -s`-`uname -r`
+- if test "$?" -ne 0 ; then
+- AC_MSG_RESULT([unknown (can't find uname command)])
+- system=unknown
+- else
+- # Special check for weird MP-RAS system (uname returns weird
+- # results, and the version is kept in special file).
+-
+- if test -r /etc/.relid -a "X`uname -n`" = "X`uname -s`" ; then
+- system=MP-RAS-`awk '{print $3}' /etc/.relid'`
+- fi
+- if test "`uname -s`" = "AIX" ; then
+- system=AIX-`uname -v`.`uname -r`
+- fi
+- if test "${TEA_PLATFORM}" = "windows" ; then
+- system=windows
+- fi
+- AC_MSG_RESULT([$system])
+- fi
+- fi
++ TEA_CONFIG_SYSTEM
+
+ # Step 2: check for existence of -ldl library. This is needed because
+ # Linux can use either -ldl or -ldld for dynamic loading.
+@@ -2318,25 +2339,8 @@
+ AC_DEFUN(TEA_BLOCKING_STYLE, [
+ AC_CHECK_HEADERS(sys/ioctl.h)
+ AC_CHECK_HEADERS(sys/filio.h)
++ TEA_CONFIG_SYSTEM
+ AC_MSG_CHECKING([FIONBIO vs. O_NONBLOCK for nonblocking I/O])
+- if test -f /usr/lib/NextStep/software_version; then
+- system=NEXTSTEP-`awk '/3/,/3/' /usr/lib/NextStep/software_version`
+- else
+- system=`uname -s`-`uname -r`
+- if test "$?" -ne 0 ; then
+- system=unknown
+- else
+- # Special check for weird MP-RAS system (uname returns weird
+- # results, and the version is kept in special file).
+-
+- if test -r /etc/.relid -a "X`uname -n`" = "X`uname -s`" ; then
+- system=MP-RAS-`awk '{print $3}' /etc/.relid'`
+- fi
+- if test "`uname -s`" = "AIX" ; then
+- system=AIX-`uname -v`.`uname -r`
+- fi
+- fi
+- fi
+ case $system in
+ # There used to be code here to use FIONBIO under AIX. However, it
+ # was reported that FIONBIO doesn't work under AIX 3.2.5. Since
+@@ -3031,13 +3035,13 @@
+ fi
+ if test "${exec_prefix}" = "NONE" -a x"${prefix_default}" = x"yes" \
+ -o x"${exec_prefix_default}" = x"yes" ; then
+- #if test x"${TCL_EXEC_PREFIX}" != x; then
+- #AC_MSG_NOTICE([--exec-prefix defaulting to TCL_EXEC_PREFIX ${TCL_EXEC_PREFIX}])
+- #exec_prefix=${TCL_EXEC_PREFIX}
+- #else
++ if test x"${TCL_EXEC_PREFIX}" != x; then
++ AC_MSG_NOTICE([--exec-prefix defaulting to TCL_EXEC_PREFIX ${TCL_EXEC_PREFIX}])
++ exec_prefix=${TCL_EXEC_PREFIX}
++ else
+ AC_MSG_NOTICE([--exec-prefix defaulting to ${prefix}])
+ exec_prefix=$prefix
+- #fi
++ fi
+ fi
+ ])
+
+@@ -3817,7 +3821,8 @@
+
+ # check in a few common install locations
+ if test x"${ac_cv_c_$1config}" = x ; then
+- for i in `ls -d ${exec_prefix}/lib 2>/dev/null` \
++ for i in `ls -d ${libdir} 2>/dev/null` \
++ `ls -d ${exec_prefix}/lib 2>/dev/null` \
+ `ls -d ${prefix}/lib 2>/dev/null` \
+ `ls -d /usr/local/lib 2>/dev/null` \
+ `ls -d /usr/contrib/lib 2>/dev/null` \
diff --git a/sci-astronomy/skycat/metadata.xml b/sci-astronomy/skycat/metadata.xml
new file mode 100644
index 000000000000..d6d8d00e72ca
--- /dev/null
+++ b/sci-astronomy/skycat/metadata.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>sci</herd>
+<longdescription lang="en">
+ SkyCat is a tool that combines visualization of images and access
+ to catalogs and archive data for astronomy. It was developed at
+ the European Southern Observatory.
+</longdescription>
+</pkgmetadata>
diff --git a/sci-astronomy/skycat/skycat-3.0.1.ebuild b/sci-astronomy/skycat/skycat-3.0.1.ebuild
new file mode 100644
index 000000000000..31a7474bcf30
--- /dev/null
+++ b/sci-astronomy/skycat/skycat-3.0.1.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2008 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sci-astronomy/skycat/skycat-3.0.1.ebuild,v 1.1 2008/04/11 11:29:58 bicatali Exp $
+
+inherit eutils autotools
+
+DESCRIPTION="ESO astronomical image visualizer with catalog access."
+HOMEPAGE="http://archive.eso.org/skycat"
+SRC_URI="ftp://ftp.eso.org/pub/archive/${PN}/Sources/${P}.tar.gz"
+LICENSE="GPL-2"
+SLOT="0"
+
+KEYWORDS="~amd64 ~x86"
+IUSE="threads"
+
+DEPEND=">=dev-tcltk/tclx-2.4
+ >=dev-tcltk/blt-2.4
+ >=dev-tcltk/itcl-3.3
+ >=dev-tcltk/iwidgets-4.0.1
+ >=dev-tcltk/tkimg-1.3"
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+ # fix buggy tcl.m4 for bash3
+ epatch "${FILESDIR}"/${P}-m4.patch
+ # fix old style headers, set as error by new g++
+ epatch "${FILESDIR}"/${P}-gcc41.patch
+ eautoconf
+}
+
+src_compile() {
+ econf \
+ $(use_enable threads) \
+ || die "econf failed"
+ emake
+ # a second time to make sure every dir passed
+ emake || die "emake failed"
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die "emake install failed"
+ dodoc README CHANGES VERSION
+ for d in tclutil astrotcl rtd cat skycat; do
+ docinto ${d}
+ for f in README CHANGES VERSION; do
+ newdoc ${f} ${f}.${d}
+ done
+ done
+}