Package Details: upak 10.6.8-15

Git Clone URL: https://aur.archlinux.org/upak.git (read-only, click to copy)
Package Base: upak
Description: HRIBF Data Acquisition and analysis.
Upstream URL: ftp://ftp.phy.ornl.gov/pub/upak/README.html
Licenses: unknown
Submitter: donpicoro
Maintainer: donpicoro (effeffe)
Last Packager: effeffe
Votes: 2
Popularity: 0.000000
First Submitted: 2012-03-03 00:38 (UTC)
Last Updated: 2026-07-03 16:49 (UTC)

Latest Comments

1 2 3 4 Next › Last »

effeffe commented on 2026-07-03 16:50 (UTC)

Updated as discussed - working and buildable standalone. All files in /opt/hhirf

effeffe commented on 2026-07-01 16:58 (UTC)

Regarding the fileSelect(int) edit you propose, that is for radware, not upak. It is a result of new C standards messing up with old stuff

I'm happy for you to merge that into radware :)

effeffe commented on 2026-07-01 16:46 (UTC) (edited on 2026-07-01 16:46 (UTC) by effeffe)

I have just created a new fresh test archlinux install with pacstrap, and tested the package there. Nothing installed beyond linux, base, base-devel and nano, plus dependencies listed in the PKGBUILD of upak.

It compiles as in pkgrel 14, but with the issue of looking for /opt/hhirf at package() time. I have patched this as follows (no major changes from before, just making a local txxps at build time, use that to make the docs, then recompile looking for hhirf.pro at the usual path.

# Maintainer: Luis Sarmiento <Luis.Sarmiento-ala-nuclear.lu.se>
# Co-Maintainer: effeffe - Filippo Falezza <filippo dot falezza at outlook dot com>

pkgname=upak
pkgver=10.6.8 # <-- current source doesn't have a version. We keep the last known one
pkgrel=15
pkgdesc="HRIBF Data Acquisition and analysis."
url="ftp://ftp.phy.ornl.gov/pub/upak/README.html"
arch=('x86_64')
license=('unknown')
depends=('libx11' 'tcsh' 'bash')
makedepends=('gcc-fortran>=4.2')
options=(staticlibs emptydirs)
source=(
  "upak-2021.tar.bz2::https://orruba.org/?mdocs-file=1159"
  #"https://ftp.phy.ornl.gov/fauxtp/${pkgname}/${pkgname}-src.tgz"
  "upak.install")
md5sums=(
  '75b58c32a5e339dcba36c2ca3039bff6'
  '28ee91c3b9ad3ac1be306fb8c0eb1f35')

install="${pkgname}.install"

prepare(){
  cd ${srcdir}/${pkgname}
  #replace /usr/hhirf with /opt/hhirf
  find . -type f -exec sed -i 's|/usr/hhirf|/opt/hhirf|g' {} +
  find . -type f -exec sed -i 's|/usr/local/hhirf|/opt/hhirf|g' {} +

  # patch txxps.c to point to a local version for compiling, then patch back for installing
  sed -i "s|/opt/hhirf/doc/hhirf.pro|${srcdir}/${pkgname}/Ddoc/hhirf.pro|" Dtxx/txxps.c
}

package(){
  cd ${srcdir}/${pkgname}
  make clean
  make -j1 INSTALLDIR="${pkgdir}/opt/hhirf" all  # <-- this already goes to ${pkgdir} therefore must be package() not build()

  cd ${srcdir}/${pkgname}
  install -m644 Dreadme/README-Apr07 ${pkgdir}/opt/hhirf/doc
  install -m644 Dreadme/readme.{tex,doc} ${pkgdir}/opt/hhirf/doc
  install -m644 Dreadme/dvd.{tex,doc} ${pkgdir}/opt/hhirf/doc

  cd $pkgdir/opt/hhirf
  for file in $(ls doc/*.doc);do
    file=$(basename -s .doc $file)
    ./txx doc/$file x
    ./txxps $file
    rm $file.txx
    mv $file.ps doc/
  done

  # patch txxps.c back for it to be installed, then rebuild txx
  cd ${srcdir}/${pkgname}
  sed -i "s|${srcdir}/${pkgname}/Ddoc/hhirf.pro|/opt/hhirf/doc/hhirf.pro|" Dtxx/txxps.c
  make -j1 INSTALLDIR="${pkgdir}/opt/hhirf" txx
}

donpicoro commented on 2026-07-01 15:52 (UTC)

Ufff... I need to think.

I think I use whatever default ones from arch since I compile this on a development CHROOT to make sure I get all dependencies right.

effeffe commented on 2026-07-01 15:48 (UTC)

Can I see your compiler errors, please? Are you compiling with gcc/gfortran, or do you have any special compiler flags in /etc/makepkg.conf? Mine are

CFLAGS="-march=znver2 -mtune=znver2 -O2 -pipe -fno-plt -fexceptions \
        -Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security \
        -fstack-clash-protection -fcf-protection"
CXXFLAGS="$CFLAGS -Wp,-D_GLIBCXX_ASSERTIONS"
LDFLAGS="-Wl,-O2,--sort-common,--as-needed,-z,relro,-z,now"
LTOFLAGS="-flto=auto"

donpicoro commented on 2026-07-01 15:42 (UTC)

Something very simple to fix with this patch ;-)

--- ./src/xmgf3_broken.c        2026-06-30 11:41:37.149070554 +0200
+++ ./src/xmgf3.c       2026-06-30 15:30:27.402018759 +0200
@@ -67,7 +67,7 @@
 char   YNreply, *MenuReply, gf3Cmnd[80], DSRcmnd[80];
 Arg    args [10];

-void        DSRegion(), fileSelect(), fixFreePars();
+void        DSRegion(), fileSelect(int), fixFreePars();

 extern int gfexec(char *, int), gfinit(int argc, char **argv);
 extern int get_focus(int *), set_focus(int);

the forward declaration does not have arguments.

/Pico

effeffe commented on 2026-07-01 15:36 (UTC)

Hi @donpicoro,

sure. I don't understand why it is not compiling on yours. It still compiles for me under pkgrel 14, even cleaning the folder and re-downloading everything.

Which errors do you see? Cheers, effeffe

donpicoro commented on 2026-06-30 14:44 (UTC)

@effeffe, Give it a whirl if you like

# Maintainer: Luis Sarmiento <Luis.Sarmiento-ala-nuclear.lu.se>
# Co-Maintainer: effeffe - Filippo Falezza <filippo dot falezza at outlook dot com>

pkgname=upak
pkgver=10.6.8 # <-- current source doesn't have a version. We keep the last known one
pkgrel=15
pkgdesc="HRIBF Data Acquisition and analysis."
url="https://orruba.org/software/"
arch=('x86_64')
license=('unknown')
depends=('libx11' 'tcsh' 'bash')
makedepends=('gcc-fortran>=4.2')
options=(staticlibs emptydirs)
source=("${pkgname}-src.tar.gz::https://orruba.org/?mdocs-file=1159"
        "upak.install")
md5sums=('75b58c32a5e339dcba36c2ca3039bff6'
         '7d8e9e7ec0f6ed54683a65f640899e20')


install="${pkgname}.install"

package() {

  ## compile
  cd "${srcdir}/${pkgname}"
  make clean
  make -j1 INSTALLDIR="${pkgdir}/usr/bin" all  # <-- this already goes to ${pkgdir} therefore must be package() not build()

  ## documentation (0)
  _DOCDIR=${pkgdir}/usr/share/doc/${pkgname}
  [ -d ${_DOCDIR} ] || install -d ${_DOCDIR}

  #  correct the location of the doc dir and change executable permissions
  install -m644 ${pkgdir}/usr/bin/doc/*  ${_DOCDIR}
  rm -rf ${pkgdir}/usr/bin/doc

  # correct the location of the file and create DOC dir
  install -Dm644 ${pkgdir}/usr/bin/*.{hep,ps,dat,make,f} ${_DOCDIR}

  #clean bin directory from what is already placed in the doc dir.
  rm -f ${pkgdir}/usr/bin/*.{hep,ps,dat,make,f}

  ## libraries
  _LIBDIR=${pkgdir}/usr/lib
  [ -d ${_LIBDIR} ] || install -d ${_LIBDIR}

  install -Dm644 ${pkgdir}/usr/bin/*.{a,o} ${pkgdir}/usr/lib/

  #clean bin directory from what is already placed in the lib dir.
  rm -f ${pkgdir}/usr/bin/*.{a,o}

  ## others
  cd "${srcdir}/${pkgname}"
  install -m644 Dreadme/README-Apr07     ${_DOCDIR}
  install -m644 Dreadme/readme.{tex,doc} ${_DOCDIR}
  install -m644 Dreadme/dvd.{tex,doc}    ${_DOCDIR}

}

donpicoro commented on 2026-06-30 14:10 (UTC)

Hello @effeffe

since rw05 does not compile unless one patches it. I took the liberty to have a look at this again and I think we can come back to they way I had things before. They all go into /usr/bin /usr/lib and /usr/share...

of course radware needs to follow to link orphlib.a in /usr/lib/ but that just works.

Let me know what you think

/Pico

effeffe commented on 2025-02-24 21:21 (UTC)

This should solve all the problems with /usr/hhirf and /usr/local/hhirf as they all get replaced by /opt/hhirf in PKGBUILD prepare. /effeffe