|
root / test / ports / devel
devel Plain Text 170 lines 3.4 KB
  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
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
#!/bin/sh
# Build script for libtest
# A simple test library for validating coral dependency resolution

set -e

echo "Building libtest..."

# Create source files
mkdir -p src

cat > src/libtest.h << 'EOF'
#ifndef LIBTEST_H
#define LIBTEST_H

/* Return a greeting message */
const char* libtest_greet(void);

/* Return the library version */
const char* libtest_version(void);

#endif /* LIBTEST_H */
EOF

cat > src/libtest.c << 'EOF'
#include "libtest.h"

const char* libtest_greet(void) {
    return "Hello from libtest!";
}

const char* libtest_version(void) {
    return "1.0.0";
}
EOF

# Compile shared library
echo "Compiling libtest..."
gcc ${CFLAGS} -fPIC -c src/libtest.c -o libtest.o
gcc -shared -o libtest.so.1.0.0 libtest.o

# Create version symlinks
ln -sf libtest.so.1.0.0 libtest.so.1
ln -sf libtest.so.1 libtest.so

# Install to DESTDIR
echo "Installing to ${DESTDIR}..."
mkdir -p "${DESTDIR}/usr/lib"
mkdir -p "${DESTDIR}/usr/include"

# Save current directory (build dir)
BUILD_DIR=$(pwd)

install -m 755 libtest.so.1.0.0 "${DESTDIR}/usr/lib/"
cd "${DESTDIR}/usr/lib"
ln -sf libtest.so.1.0.0 libtest.so.1
ln -sf libtest.so.1 libtest.so

# Install header from saved build directory
install -m 644 "${BUILD_DIR}/src/libtest.h" "${DESTDIR}/usr/include/"

echo "Build complete!"
# libtest - Simple Test Library
# For testing dependency resolution

[package]
name = "libtest"
version = "1.0.1"
release = 1
description = "A simple test library for validating coral dependencies"
url = "https://github.com/leafscale/zygaena"
license = "BSD-2-Clause"
maintainer = "Chris Tusa <chris.tusa@leafscale.com>"
arch = "x86_64"

# Provides the testlib alternative
alternatives = ["testlib"]

[dependencies]
runtime = []
build = []

[sources]
# No external sources - we create inline
urls = []
checksums = []

[build]
parallel = true
jobs = 1
#!/bin/sh
# Build script for ncurses
# Terminal UI library

set -e

echo "Building ncurses..."

cd ncurses-6.4

# On illumos, use GNU make
MAKE=gmake
if [ "$(uname -s)" != "SunOS" ]; then
    MAKE=make
fi

# Configure with common options
./configure \
    --prefix=/usr \
    --with-shared \
    --with-cxx-shared \
    --without-debug \
    --without-normal \
    --enable-widec \
    --enable-pc-files \
    --with-pkg-config-libdir=/usr/lib/pkgconfig

# Build
$MAKE ${MAKEFLAGS}

# Install to DESTDIR
echo "Installing to ${DESTDIR}..."
$MAKE DESTDIR="${DESTDIR}" install

# Create compatibility symlinks for non-wide-char programs
# Many programs expect -lncurses, but we built -lncursesw
cd "${DESTDIR}/usr/lib"
for lib in ncurses form panel menu; do
    ln -sf lib${lib}w.so lib${lib}.so 2>/dev/null || true
    ln -sf ${lib}w.pc /usr/lib/pkgconfig/${lib}.pc 2>/dev/null || true
done

# Also provide curses.h symlink
cd "${DESTDIR}/usr/include"
ln -sf ncursesw/curses.h curses.h 2>/dev/null || true
ln -sf ncursesw/ncurses.h ncurses.h 2>/dev/null || true

echo "Build complete!"
# ncurses - Terminal UI Library
# Foundation library for terminal applications

[package]
name = "ncurses"
version = "6.4"
release = 1
description = "Terminal UI library for Unix-like systems"
url = "https://invisible-island.net/ncurses/"
license = "MIT"
maintainer = "Chris Tusa <chris.tusa@leafscale.com>"
arch = "x86_64"

# ncurses provides the curses alternative
alternatives = ["curses"]

[dependencies]
runtime = []
build = []

[sources]
urls = [
    "https://ftp.gnu.org/gnu/ncurses/ncurses-6.4.tar.gz"
]
checksums = [
    "SKIP"
]

[build]
parallel = true
jobs = 0