Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: postgresql-cfbot/postgresql
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: cf/5671~1
Choose a base ref
...
head repository: postgresql-cfbot/postgresql
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: cf/5671
Choose a head ref
  • 8 commits
  • 60 files changed
  • 3 contributors

Commits on May 2, 2025

  1. meson: Add generated header stamps

    Otherwise build commands become too long and this has visible effect on
    creation time of meson build files.
    
    Author: Andres Freund <andres@anarazel.de>
    Author: Nazir Bilal Yavuz <byavuz81@gmail.com>
    Discussion: https://postgr.es/m/206b001d-1884-4081-bd02-bed5c92f02ba%40eisentraut.org
    anarazel authored and Commitfest Bot committed May 2, 2025
    Configuration menu
    Copy the full SHA
    fc0d8fe View commit details
    Browse the repository at this point in the history
  2. meson: Add postgresql-extension.pc for building extension libraries

    This should work with several other buildsystems.
    
    TODO: Docs
    
    Author: Andres Freund <andres@anarazel.de>
    Author: Nazir Bilal Yavuz <byavuz81@gmail.com>
    Discussion: https://postgr.es/m/206b001d-1884-4081-bd02-bed5c92f02ba%40eisentraut.org
    anarazel authored and Commitfest Bot committed May 2, 2025
    Configuration menu
    Copy the full SHA
    9f8c990 View commit details
    Browse the repository at this point in the history
  3. meson: Test building extensions by using postgresql-extension.pc

    The 'test_meson_extensions' pyton wrapper is added to run these tests.
    It compiles and builds extensions at
    ${build}/testrun/meson_extensions/${extension_name} path.
    
    The tests for building amcheck, auth_delay and postgres_fdw extensions
    are added. These are also examples of how to build extensions by using
    postgresql-extension.pc.
    
    Author: Andres Freund <andres@anarazel.de>
    Author: Nazir Bilal Yavuz <byavuz81@gmail.com>
    Discussion: https://postgr.es/m/206b001d-1884-4081-bd02-bed5c92f02ba%40eisentraut.org
    nbyavuz authored and Commitfest Bot committed May 2, 2025
    Configuration menu
    Copy the full SHA
    428fb55 View commit details
    Browse the repository at this point in the history
  4. meson: [WIP] Add docs for postgresql-extension.pc

    Author: Andres Freund <andres@anarazel.de>
    Author: Nazir Bilal Yavuz <byavuz81@gmail.com>
    Discussion: https://postgr.es/m/206b001d-1884-4081-bd02-bed5c92f02ba%40eisentraut.org
    nbyavuz authored and Commitfest Bot committed May 2, 2025
    Configuration menu
    Copy the full SHA
    aefc722 View commit details
    Browse the repository at this point in the history
  5. meson: Add architecture for LLVM bitcode emission

    This commit adds suport for bitcode emission for both normal and
    generated source files (processed by bison, flex, etc). These bitcode
    files are installed into $pkglibdir/bitcode/ directory if the LLVM is
    found.
    
    New variable `bitcode_modules` is introduced to generate bitcode files.
    All required information is gathered in this variable. Then, this
    variable is processed by the main meson LLVM bitcode emission scripts:
    src/backend/jit/llvm/bitcode/meson.build -> src/tools/irlink.
    
    An example of a possible structure of bitcode_modules is:
    ```
    bitcode_modules = [
      {
        'name': '...',
        'target': ...,
        'srcfiles': [
          '...',
          '...',
        ],
        'additional_flags': [
          '-I...',
          '-I...',
        ],
        'gen_srcfiles': [
          {
            'srcfiles': [
              <custom_target for ...>,
              <custom_target for ...>,
            ],
            'additional_flags': [
              '-I...',
              '-I...',
            ]
          }
        ]
      }
    ]
    ```
    
    Author: Andres Freund <andres@anarazel.de>
    Author: Nazir Bilal Yavuz <byavuz81@gmail.com>
    Author: Diego Fronza <diego.fronza@percona.com>
    Reviewed-by: Diego Fronza <diego.fronza@percona.com>
    Discussion: https://postgr.es/m/206b001d-1884-4081-bd02-bed5c92f02ba%40eisentraut.org
    nbyavuz authored and Commitfest Bot committed May 2, 2025
    Configuration menu
    Copy the full SHA
    0fe8795 View commit details
    Browse the repository at this point in the history
  6. meson: Add LLVM bitcode emissions for contrib libraries

    The libraries which the bitcode files will be generated in are selected
    manually.
    
    Author: Andres Freund <andres@anarazel.de>
    Author: Nazir Bilal Yavuz <byavuz81@gmail.com>
    Author: Diego Fronza <diego.fronza@percona.com>
    Reviewed-by: Diego Fronza <diego.fronza@percona.com>
    Discussion: https://postgr.es/m/206b001d-1884-4081-bd02-bed5c92f02ba%40eisentraut.org
    nbyavuz authored and Commitfest Bot committed May 2, 2025
    Configuration menu
    Copy the full SHA
    c9a6760 View commit details
    Browse the repository at this point in the history
  7. meson: Add LLVM bitcode emission for backend sources

    Since generated backend sources may have their own compilation flags and
    must also be included in the postgres.index.bc, the way to make it work
    with current code was to create a new variable, called
    `bc_generated_backend_sources`, which is a list of dictionaries, each
    one having an optional 'additional_flags' and a `srclist` pointing to
    the list of custom_target generated sources.
    
    An example of a possible structure of bitcode_modules which is processed
    by the main meson llvm bitcode emission file
    src/backend/jit/llvm/bitcode/meson.build:
    ```
    bitcode_modules = [
      {
        'name': 'postgres',
        'target': postgres_lib,
        'src_file': backend_sources,
        'gen_srcfiles': [
          {
            'additional_flags': [
              '-I/path/postgresl/src/backend/parser',
              '-I/path/postgresl/build/src/backend/parser',
            ],
            'srcfiles': [
                    <custom_target for scan.c>,
                    <custom_target for gram.c>
            ]
          }
        ]
      }
    ]
    ```
    
    Author: Diego Fronza <diego.fronza@percona.com>
    Author: Nazir Bilal Yavuz <byavuz81@gmail.com>
    Discussion: https://postgr.es/m/206b001d-1884-4081-bd02-bed5c92f02ba%40eisentraut.org
    nbyavuz authored and Commitfest Bot committed May 2, 2025
    Configuration menu
    Copy the full SHA
    bf7892f View commit details
    Browse the repository at this point in the history
  8. [CF 5671] v5 - Produce LLVM bitcode files on meson builds

    This branch was automatically generated by a robot using patches from an
    email thread registered at:
    
    https://commitfest.postgresql.org/patch/5671
    
    The branch will be overwritten each time a new patch version is posted to
    the thread, and also periodically to check for bitrot caused by changes
    on the master branch.
    
    Patch(es): https://www.postgresql.org/message-id/CAN55FZ3oT2FUbd-Zga0w69gyv05ZtihKTypyJWH4JHL-nmv-kA@mail.gmail.com
    Author(s): Andres Freund, Diego Fronza, Nazir Bilal Yavuz
    Commitfest Bot committed May 2, 2025
    Configuration menu
    Copy the full SHA
    34732fa View commit details
    Browse the repository at this point in the history
Loading