Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/C/Firefox/media/libjpeg/   (Firefox Browser Version 153.0.1©)  Datei vom 27.6.2026 mit Größe 9 kB image not shown  

Quelle  moz.build   Sprache: unbekannt

 
Spracherkennung für: .build vermutete Sprache: Unknown {[0] [0] [0]} [Methode: Schwerpunktbildung, einfache Gewichte, sechs Dimensionen]

# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.

with Files("**"):
    BUG_COMPONENT = ("Core", "Graphics: ImageLib")

DIRS += [
    "src/wrapper",
]

EXPORTS += [
    'jconfig.h',
    'src/jerror.h',
    'src/jinclude.h',
    'src/jmorecfg.h',
    'src/jpegint.h',
    'src/jpeglib.h',
]

LOCAL_INCLUDES += [
    '/media/libjpeg',
    '/media/libjpeg/src',
]

SOURCES += [
    'src/jcomapi.c',
    'src/jdapimin.c',
    'src/jdatadst.c',
    'src/jdatasrc.c',
    'src/jdhuff.c',
    'src/jdicc.c',
    'src/jdinput.c',
    'src/jdlhuff.c',
    'src/jdmarker.c',
    'src/jdmaster.c',
    'src/jdphuff.c',
    'src/jdtrans.c',
    'src/jerror.c',
    'src/jfdctflt.c',
    'src/jmemmgr.c',
    'src/jmemnobs.c',
    'src/jpeg_nbits.c',
]

# These files enable support for writing JPEGs
SOURCES += [
    'src/jcapimin.c',
    'src/jchuff.c',
    'src/jcicc.c',
    'src/jcinit.c',
    'src/jclhuff.c',
    'src/jcmarker.c',
    'src/jcmaster.c',
    'src/jcparam.c',
    'src/jcphuff.c',
    'src/jctrans.c',
]

include('/media/libjpeg/libjpeg-config.mozbuild')

if CONFIG['LIBJPEG_TURBO_SIMD_FLAGS']:
    if CONFIG['TARGET_CPU'] == 'arm':
        LOCAL_INCLUDES += [
            '/media/libjpeg/simd/arm',
            '/media/libjpeg/simd/arm/aarch32',
        ]
        SOURCES += [
            'simd/arm/aarch32/jsimd.c',
        ]

        simd_sources = [
            'simd/arm/aarch32/jchuff-neon.c',
            'simd/arm/jcgray-neon.c',
            'simd/arm/jcphuff-neon.c',
            'simd/arm/jcsample-neon.c',
            'simd/arm/jdcolor-neon.c',
            'simd/arm/jdmerge-neon.c',
            'simd/arm/jdsample-neon.c',
            'simd/arm/jfdctfst-neon.c',
            'simd/arm/jfdctint-neon.c',
            'simd/arm/jidctred-neon.c',
            'simd/arm/jquanti-neon.c',
        ]
        SOURCES += simd_sources

        if CONFIG['LIBJPEG_TURBO_NEON_INTRINSICS']:
            simd_sources_intrinsics = [
                'simd/arm/jccolor-neon.c',
                'simd/arm/jidctfst-neon.c',
                'simd/arm/jidctint-neon.c',
            ]
            SOURCES += simd_sources_intrinsics
            simd_sources += simd_sources_intrinsics
        else:
            SOURCES += [
                'simd/arm/aarch32/jsimd_neon.S',
            ]

        for srcfile in simd_sources:
            SOURCES[srcfile].flags += CONFIG['LIBJPEG_TURBO_SIMD_FLAGS']
    elif CONFIG['TARGET_CPU'] == 'aarch64':
        LOCAL_INCLUDES += [
            '/media/libjpeg/simd/arm',
            '/media/libjpeg/simd/arm/aarch64',
        ]
        SOURCES += [
            'simd/arm/aarch64/jsimd.c',
        ]

        simd_sources = [
                'simd/arm/jcgray-neon.c',
                'simd/arm/jcphuff-neon.c',
                'simd/arm/jcsample-neon.c',
                'simd/arm/jdmerge-neon.c',
                'simd/arm/jdsample-neon.c',
                'simd/arm/jfdctfst-neon.c',
                'simd/arm/jidctfst-neon.c',
                'simd/arm/jidctred-neon.c',
                'simd/arm/jquanti-neon.c',
        ]
        SOURCES += simd_sources

        if CONFIG['LIBJPEG_TURBO_NEON_INTRINSICS']:
            simd_sources_intrinsics = [
                'simd/arm/aarch64/jchuff-neon.c',
                'simd/arm/jccolor-neon.c',
                'simd/arm/jdcolor-neon.c',
                'simd/arm/jfdctint-neon.c',
                'simd/arm/jidctint-neon.c',
            ]
            SOURCES += simd_sources_intrinsics
            simd_sources += simd_sources_intrinsics
        else:
            SOURCES += [
                'simd/arm/aarch64/jsimd_neon.S',
            ]

        for srcfile in simd_sources:
            SOURCES[srcfile].flags += CONFIG['LIBJPEG_TURBO_SIMD_FLAGS']
    elif CONFIG['TARGET_CPU'] == 'mips32':
        SOURCES += [
            'simd/mips/jsimd.c',
            'simd/mips/jsimd_dspr2.S',
        ]
        if CONFIG['CC_TYPE'] == 'clang':
            SOURCES['simd/mips/jsimd_dspr2.S'].flags += [
                '-fno-integrated-as',
            ]
    elif CONFIG['TARGET_CPU'] == 'mips64':
        LOCAL_INCLUDES += ['/media/libjpeg/simd/mips64']
        simd_sources = [
            'simd/mips64/jccolor-mmi.c',
            'simd/mips64/jcgray-mmi.c',
            'simd/mips64/jcsample-mmi.c',
            'simd/mips64/jdcolor-mmi.c',
            'simd/mips64/jdmerge-mmi.c',
            'simd/mips64/jdsample-mmi.c',
            'simd/mips64/jfdctfst-mmi.c',
            'simd/mips64/jfdctint-mmi.c',
            'simd/mips64/jidctfst-mmi.c',
            'simd/mips64/jidctint-mmi.c',
            'simd/mips64/jquanti-mmi.c',
        ]
        SOURCES += simd_sources
        SOURCES += [
            'simd/mips64/jsimd.c'
        ]
        for srcfile in simd_sources:
            SOURCES[srcfile].flags += CONFIG['LIBJPEG_TURBO_SIMD_FLAGS']
    elif CONFIG['TARGET_CPU'] == 'x86_64':
        SOURCES += [
            'simd/x86_64/jccolor-avx2.asm',
            'simd/x86_64/jccolor-sse2.asm',
            'simd/x86_64/jcgray-avx2.asm',
            'simd/x86_64/jcgray-sse2.asm',
            'simd/x86_64/jchuff-sse2.asm',
            'simd/x86_64/jcphuff-sse2.asm',
            'simd/x86_64/jcsample-avx2.asm',
            'simd/x86_64/jcsample-sse2.asm',
            'simd/x86_64/jdcolor-avx2.asm',
            'simd/x86_64/jdcolor-sse2.asm',
            'simd/x86_64/jdmerge-avx2.asm',
            'simd/x86_64/jdmerge-sse2.asm',
            'simd/x86_64/jdsample-avx2.asm',
            'simd/x86_64/jdsample-sse2.asm',
            'simd/x86_64/jfdctflt-sse.asm',
            'simd/x86_64/jfdctfst-sse2.asm',
            'simd/x86_64/jfdctint-avx2.asm',
            'simd/x86_64/jfdctint-sse2.asm',
            'simd/x86_64/jidctflt-sse2.asm',
            'simd/x86_64/jidctfst-sse2.asm',
            'simd/x86_64/jidctint-avx2.asm',
            'simd/x86_64/jidctint-sse2.asm',
            'simd/x86_64/jidctred-sse2.asm',
            'simd/x86_64/jquantf-sse2.asm',
            'simd/x86_64/jquanti-avx2.asm',
            'simd/x86_64/jquanti-sse2.asm',
            'simd/x86_64/jsimd.c',
            'simd/x86_64/jsimdcpu.asm',
        ]
    elif CONFIG['TARGET_CPU'] == 'x86':
        SOURCES += [
            'simd/i386/jccolor-avx2.asm',
            'simd/i386/jccolor-mmx.asm',
            'simd/i386/jccolor-sse2.asm',
            'simd/i386/jcgray-avx2.asm',
            'simd/i386/jcgray-mmx.asm',
            'simd/i386/jcgray-sse2.asm',
            'simd/i386/jchuff-sse2.asm',
            'simd/i386/jcphuff-sse2.asm',
            'simd/i386/jcsample-avx2.asm',
            'simd/i386/jcsample-mmx.asm',
            'simd/i386/jcsample-sse2.asm',
            'simd/i386/jdcolor-avx2.asm',
            'simd/i386/jdcolor-mmx.asm',
            'simd/i386/jdcolor-sse2.asm',
            'simd/i386/jdmerge-avx2.asm',
            'simd/i386/jdmerge-mmx.asm',
            'simd/i386/jdmerge-sse2.asm',
            'simd/i386/jdsample-avx2.asm',
            'simd/i386/jdsample-mmx.asm',
            'simd/i386/jdsample-sse2.asm',
            'simd/i386/jfdctflt-3dn.asm',
            'simd/i386/jfdctflt-sse.asm',
            'simd/i386/jfdctfst-mmx.asm',
            'simd/i386/jfdctfst-sse2.asm',
            'simd/i386/jfdctint-avx2.asm',
            'simd/i386/jfdctint-mmx.asm',
            'simd/i386/jfdctint-sse2.asm',
            'simd/i386/jidctflt-3dn.asm',
            'simd/i386/jidctflt-sse.asm',
            'simd/i386/jidctflt-sse2.asm',
            'simd/i386/jidctfst-mmx.asm',
            'simd/i386/jidctfst-sse2.asm',
            'simd/i386/jidctint-avx2.asm',
            'simd/i386/jidctint-mmx.asm',
            'simd/i386/jidctint-sse2.asm',
            'simd/i386/jidctred-mmx.asm',
            'simd/i386/jidctred-sse2.asm',
            'simd/i386/jquant-3dn.asm',
            'simd/i386/jquant-mmx.asm',
            'simd/i386/jquant-sse.asm',
            'simd/i386/jquantf-sse2.asm',
            'simd/i386/jquanti-avx2.asm',
            'simd/i386/jquanti-sse2.asm',
            'simd/i386/jsimd.c',
            'simd/i386/jsimdcpu.asm',
        ]
elif CONFIG['TARGET_CPU'].startswith('ppc'):
    # PowerPC has no assembly files, but still needs its own headers.
    LOCAL_INCLUDES += ['/media/libjpeg/simd/powerpc']

    # For libjpeg's internal runtime detection to work, jsimd.c must NOT
    # be compiled with -maltivec (otherwise it gets statically set),
    # but everything else should be. If -maltivec was already
    # specified in .mozconfig, though, then this won't harm anything.
    ppc_vmx_sources = [
        'simd/powerpc/jccolor-altivec.c',
        'simd/powerpc/jcgray-altivec.c',
        'simd/powerpc/jcsample-altivec.c',
        'simd/powerpc/jdcolor-altivec.c',
        'simd/powerpc/jdmerge-altivec.c',
        'simd/powerpc/jdsample-altivec.c',
        'simd/powerpc/jfdctfst-altivec.c',
        'simd/powerpc/jfdctint-altivec.c',
        'simd/powerpc/jidctfst-altivec.c',
        'simd/powerpc/jidctint-altivec.c',
        'simd/powerpc/jquanti-altivec.c',
    ]
    SOURCES += ppc_vmx_sources
    SOURCES += [
        'simd/powerpc/jsimd.c',
    ]
    for srcfile in ppc_vmx_sources:
        SOURCES[srcfile].flags += CONFIG['PPC_VMX_FLAGS']

# We allow warnings for third-party code that can be updated from upstream.
AllowCompilerWarnings()

FINAL_LIBRARY = 'xul'


[Dauer der Verarbeitung: 0.28 Sekunden]