summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: 950119297ee8c3b6b28f23627c9feb8b03c82cd9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
# Maintainer: vetu104 <janne.p.w.vetelainen@gmail.com>
# Contributor: Viste <viste02@gmail.com> 
# Contributor: alrii <alrii@gmail.com> 
# Contributor: jjpk <julienjpk@email.com>
# Contributor: Benjamin Chrétien <chretien at lirmm dot fr>
# Contributor: DaNiMoTh <jjdanimoth@gmail.com>
# Contributor: Andrea Scarpino <bash.lnx@gmail.com>
# Contributor: Gereon Schomber <Gereon_Schomber@fastmail.fm>
# Contributor: Alex Belanger <i.caught.air@gmail.com>

pkgname=ace
_pkgver=7_1_4
pkgver=7.1.4
pkgrel=1
pkgdesc="Framework that provides many components and patterns for developing high-performance, distributed real-time and embedded systems."
arch=('x86_64')
url="https://www.dre.vanderbilt.edu/~schmidt/ACE.html"
license=('DOC')
depends=('gcc-libs' 'glibc')
makedepends=('perl')
optdepends=(
    'perl: MPC support'
)
provides=('libACE.so' 'libACEXML.so' 'libACEXML_Parser.so'
    'libACEXML_XML_Svc_Conf_Parser.so' 'libACE_Compression.so'
    'libACE_ETCL.so'  'libACE_ETCL_Parser.so' 'libACE_HTBP.so' 'libACE_INet.so'
    'libACE_Monitor_Control.so' 'libACE_RLECompression.so' 'libACE_RMCast.so'
    'libACE_TMCast.so' 'libKokyu.so'
)

source=("https://github.com/DOCGroup/ACE_TAO/releases/download/ACE%2BTAO-$_pkgver/ACE-src-$pkgver.tar.gz")
sha256sums=('97b83924ef161e6d8869b95d73b2553e19f79a2bb326dcb0092cd376b971dedf')

prepare() {
    export ACE_ROOT="$srcdir/ACE_wrappers"
    cd "$ACE_ROOT"

    # Disable expandtab if modifying these here-strings
    # Indentation in resulted file is wrong if indented with spaces

    # Built a select subset of components in the ACE release
    # Inspired by Debian
	cat <<-EOF > "$ACE_ROOT/ACE.mwc"
	workspace {
	    exclude {
	        apps/gperf/tests
	        apps/Gateway
	        apps/JAWS
	        apps/JAWS2
	        apps/JAWS3
	        apps/drwho
	        apps/mkcsregdb
	        apps/soreduce

	        ACEXML/tests
	        Kokyu/tests
	        ACEXML/examples
	        netsvcs/clients
	        protocols/examples

	        ASNMP
	        examples
	        performance-tests
	        websvcs
	    }
	}
	EOF
}

build() {
    export ACE_ROOT="$srcdir/ACE_wrappers"
    cd "$ACE_ROOT"

	cat <<-EOF > "$ACE_ROOT/ace/config.h"
	#include "ace/config-linux.h"
	EOF

	cat <<-EOF > "$ACE_ROOT/include/makeinclude/platform_macros.GNU"
	INSTALL_PREFIX = /usr
	include \$(ACE_ROOT)/include/makeinclude/platform_linux.GNU
	EOF

	#cat <<-EOF > "$ACE_ROOT/bin/MakeProjectCreator/config/default.features"
	#EOF

    export LD_LIBRARY_PATH="$ACE_ROOT/lib:$LD_LIBRARY_PATH"
    "$ACE_ROOT/bin/mwc.pl" -type gnuace ACE.mwc
    make
}

check() {
    export ACE_ROOT="$srcdir/ACE_wrappers"
    export LD_LIBRARY_PATH="$ACE_ROOT/lib:$LD_LIBRARY_PATH"
    cd "$ACE_ROOT"

    # Tests that are failing on my system
    # (Clean chroot, kernel defaults sysctl, limits)
    sed -i '/Bug_2610_Regression_Test/d' "$ACE_ROOT/tests/run_test.lst"
    sed -i '/Bug_2740_Regression_Test/d' "$ACE_ROOT/tests/run_test.lst"
    sed -i '/Bug_3943_Regression_Test/d' "$ACE_ROOT/tests/run_test.lst"
    sed -i '/MT_Reference_Counted_Event_Handler_Test/d' "$ACE_ROOT/tests/run_test.lst"
    sed -i '/INET_Addr_Test_IPV6/d' "$ACE_ROOT/tests/run_test.lst"
    sed -i '/Multicast_Test_IPV6/d' "$ACE_ROOT/tests/run_test.lst"

    "$ACE_ROOT/bin/auto_run_tests.pl" -Config FIXED_BUGS_ONLY 2>&1 | tee tests.log

    local status=0

    echo "--- Failed tests:"
    if grep "auto_run_tests_finished" tests.log |
        grep -v "Result:0"; then
            status=1
    else
        echo "None."
    fi
    echo "---"

    return "$status"
}

package() {
    export ACE_ROOT="$srcdir/ACE_wrappers"
    cd "$ACE_ROOT"
    make DESTDIR="$pkgdir/" install
    install -Dm644 COPYING "$pkgdir/usr/share/licenses/$pkgname/COPYING"
}