Skip to content

[libogg] [package list]

libogg/1.3.5-cpeGNU-24.03 (libogg-1.3.5-cpeGNU-24.03.eb)

To access module help and find out for which stacks and partitions the module is installed, use module spider libogg/1.3.5-cpeGNU-24.03.

EasyConfig:

easyblock = 'ConfigureMake'

local_libogg_version =       '1.3.5'         # https://www.xiph.org/downloads/ or https://github.com/xiph/ogg/releases

name =    'libogg'
version = local_libogg_version

homepage = 'https://xiph.org/off/'

whatis = [
    "Description: Library to work with the Ogg container format",
]

description = """
Ogg is a multimedia container format, and the native file and stream format
for the Xiph.org multimedia codecs. As with all Xiph.org technology is it
an open format free for anyone to use.

As with most container formats it encapsulates raw compressed data and allows
the interleaving of audio and video data inside a single convenient format.
Other examples of container formats are Quicktime .mov, the MPEG program
stream, and AVI.

In addition to encapsulation and interleave of multiple data streams, Ogg
provides packet framing, error detection, and periodic timestamps for
seeking, and in a small, bounded percentage bitrate overhead.

Ogg is a stream oriented container, meaning it can be written and read in
one pass, making it a natural fit for internet streaming and use in
processing pipelines. This stream orientation is the major design
difference over other file-based container formats.
"""

docurls = [
    'Web-based documentation on https://xiph.org/ogg/doc/',
]

software_license_urls = [
    f'https://github.com/xiph/ogg/blob/v{version}/COPYING',
]

toolchain = {'name': 'cpeGNU', 'version': '24.03'}
toolchainopts = {'pic': True}

# http://downloads.xiph.org/releases/ogg/libogg-1.3.4.tar.xz
sources =     [SOURCELOWER_TAR_XZ]
source_urls = ['http://downloads.xiph.org/releases/ogg/']
checksums =   ['c4d91be36fc8e54deae7575241e03f4211eb102afb3fc0775fbbc1b740016705']

builddependencies = [ # Create a reproducible build environment.
    ('buildtools', '%(toolchain_version)s', '', True),
]

# Doesn't need MPI, ROCm or BLAS, and module unload never fails so this is safe.
preconfigopts = 'module unload cray-libsci cray-mpich rocm xpmem && '
prebuildopts = preconfigopts

configopts = '--enable-static --enable-shared'

postinstallcmds = [
    'mkdir -p %(installdir)s/share/licenses/%(name)s',
    'cp AUTHORS CHANGES COPYING README.md %(installdir)s/share/licenses/%(name)s',   
]

sanity_check_paths = {
    'files': ['lib/libogg.%s' % x for x in ['a', 'la', SHLIB_EXT]] +
             ['include/ogg/ogg.h', 'lib/pkgconfig/ogg.pc', f'share/licenses/libogg/COPYING'],
    'dirs':  ['share/doc/libogg', 'share/aclocal'],
}

sanity_check_commands = [
    'pkg-config --libs ogg',
]

moduleclass = 'data'

[libogg] [package list]