Super-project for modularized Boost

Overview

Boost C++ Libraries

The Boost project provides free peer-reviewed portable C++ source libraries.

We emphasize libraries that work well with the C++ Standard Library. Boost libraries are intended to be widely useful, and usable across a broad spectrum of applications. The Boost license encourages both commercial and non-commercial use and does not require attribution for binary use.

The project website is www.boost.org, where you can obtain more information and download the current release.

Comments
  • Enable hidden visibility by default

    Enable hidden visibility by default

    This commit uses the new visibility feature added in https://github.com/boostorg/build/commit/898ddfa1b6888424eb292942d1014261ac7b6183 and enables hidden visibility by default for Boost libraries.

    The discussion that led to this PR is here:

    http://boost.2283326.n4.nabble.com/all-Request-for-out-of-the-box-visibility-support-tt4704134.html

    opened by Lastique 32
  • boost_1_70_0.tar.gz is Forbidden

    boost_1_70_0.tar.gz is Forbidden

    wget https://dl.bintray.com/boostorg/release/1.70.0/source/boost_1_70_0.tar.gz --2019-05-30 15:24:16-- https://dl.bintray.com/boostorg/release/1.70.0/source/boost_1_70_0.tar.gz Resolving dl.bintray.com (dl.bintray.com)... 54.93.138.218, 35.157.207.108 Connecting to dl.bintray.com (dl.bintray.com)|54.93.138.218|:443... connected. HTTP request sent, awaiting response... 403 Forbidden 2019-05-30 15:24:17 ERROR 403: Forbidden.

    error: downloading 'https://dl.bintray.com/boostorg/release/1.70.0/source/boost_1_70_0.tar.gz' failed status_code: 22 status_string: "HTTP response code said error" log: --- LOG BEGIN --- Trying 54.93.138.218...

    TCP_NODELAY set

    Connected to dl.bintray.com (54.93.138.218) port 443 (#0)

    ALPN, offering http/1.1

    Cipher selection: ALL:!EXPORT:!EXPORT40:!EXPORT56:!aNULL:!LOW:!RC4:@STRENGTH

    successfully set certificate verify locations:

    CAfile: /etc/ssl/cert.pem
    CApath: none
    

    TLSv1.2 (OUT), TLS handshake, Client hello (1):

    [217 bytes data]

    TLSv1.2 (IN), TLS handshake, Server hello (2):

    [89 bytes data]

    TLSv1.2 (IN), TLS handshake, Certificate (11):

    [3593 bytes data]

    TLSv1.2 (IN), TLS handshake, Server key exchange (12):

    [333 bytes data]

    TLSv1.2 (IN), TLS handshake, Server finished (14):

    [4 bytes data]

    TLSv1.2 (OUT), TLS handshake, Client key exchange (16):

    [70 bytes data]

    TLSv1.2 (OUT), TLS change cipher, Client hello (1):

    [1 bytes data]

    TLSv1.2 (OUT), TLS handshake, Finished (20):

    [16 bytes data]

    TLSv1.2 (IN), TLS change cipher, Client hello (1):

    [1 bytes data]

    TLSv1.2 (IN), TLS handshake, Finished (20):

    [16 bytes data]

    SSL connection using TLSv1.2 / ECDHE-RSA-AES128-GCM-SHA256

    ALPN, server did not agree to a protocol

    Server certificate:

    subject: CN=.bintray.com start date: Sep 15 00:00:00 2018 GMT expire date: Nov 9 12:00:00 2019 GMT subjectAltName: host "dl.bintray.com" matched cert's ".bintray.com" issuer: C=US; O=DigiCert Inc; OU=www.digicert.com; CN=GeoTrust RSA CA 2018 SSL certificate verify ok.

    GET /boostorg/release/1.70.0/source/boost_1_70_0.tar.gz HTTP/1.1

    Host: dl.bintray.com

    User-Agent: curl/7.54.0

    Accept: /

    The requested URL returned error: 403 Forbidden

    stopped the pause stream!

    Closing connection 0

    TLSv1.2 (OUT), TLS alert, Client hello (1):

    [2 bytes data]

         --- LOG END ---
         error: downloading 'https://dl.bintray.com/boostorg/release/1.70.0/source/boost_1_70_0.tar.gz' failed
         status_code: 22
         status_string: "HTTP response code said error"
         log:
         --- LOG BEGIN ---
           Trying 54.93.138.218...
    

    TCP_NODELAY set

    Connected to dl.bintray.com (54.93.138.218) port 443 (#0)

    ALPN, offering http/1.1

    Cipher selection: ALL:!EXPORT:!EXPORT40:!EXPORT56:!aNULL:!LOW:!RC4:@STRENGTH

    successfully set certificate verify locations:

    CAfile: /etc/ssl/cert.pem
    CApath: none
    

    TLSv1.2 (OUT), TLS handshake, Client hello (1):

    [217 bytes data]

    TLSv1.2 (IN), TLS handshake, Server hello (2):

    [89 bytes data]

    TLSv1.2 (IN), TLS handshake, Certificate (11):

    [3593 bytes data]

    TLSv1.2 (IN), TLS handshake, Server key exchange (12):

    [333 bytes data]

    TLSv1.2 (IN), TLS handshake, Server finished (14):

    [4 bytes data]

    TLSv1.2 (OUT), TLS handshake, Client key exchange (16):

    [70 bytes data]

    TLSv1.2 (OUT), TLS change cipher, Client hello (1):

    [1 bytes data]

    TLSv1.2 (OUT), TLS handshake, Finished (20):

    [16 bytes data]

    TLSv1.2 (IN), TLS change cipher, Client hello (1):

    [1 bytes data]

    TLSv1.2 (IN), TLS handshake, Finished (20):

    [16 bytes data]

    SSL connection using TLSv1.2 / ECDHE-RSA-AES128-GCM-SHA256

    ALPN, server did not agree to a protocol

    Server certificate:

    subject: CN=.bintray.com start date: Sep 15 00:00:00 2018 GMT expire date: Nov 9 12:00:00 2019 GMT subjectAltName: host "dl.bintray.com" matched cert's ".bintray.com" issuer: C=US; O=DigiCert Inc; OU=www.digicert.com; CN=GeoTrust RSA CA 2018 SSL certificate verify ok.

    GET /boostorg/release/1.70.0/source/boost_1_70_0.tar.gz HTTP/1.1

    Host: dl.bintray.com

    User-Agent: curl/7.54.0

    Accept: /

    The requested URL returned error: 403 Forbidden

    stopped the pause stream!

    Closing connection 0

    TLSv1.2 (OUT), TLS alert, Client hello (1):

    [2 bytes data]

         --- LOG END ---
         error: downloading 'https://dl.bintray.com/boostorg/release/1.70.0/source/boost_1_70_0.tar.gz' failed
         status_code: 22
         status_string: "HTTP response code said error"
         log:
         --- LOG BEGIN ---
           Trying 54.93.138.218...
    

    TCP_NODELAY set

    Connected to dl.bintray.com (54.93.138.218) port 443 (#0)

    ALPN, offering http/1.1

    Cipher selection: ALL:!EXPORT:!EXPORT40:!EXPORT56:!aNULL:!LOW:!RC4:@STRENGTH

    successfully set certificate verify locations:

    CAfile: /etc/ssl/cert.pem
    CApath: none
    

    TLSv1.2 (OUT), TLS handshake, Client hello (1):

    [217 bytes data]

    TLSv1.2 (IN), TLS handshake, Server hello (2):

    [89 bytes data]

    TLSv1.2 (IN), TLS handshake, Certificate (11):

    [3593 bytes data]

    TLSv1.2 (IN), TLS handshake, Server key exchange (12):

    [333 bytes data]

    TLSv1.2 (IN), TLS handshake, Server finished (14):

    [4 bytes data]

    TLSv1.2 (OUT), TLS handshake, Client key exchange (16):

    [70 bytes data]

    TLSv1.2 (OUT), TLS change cipher, Client hello (1):

    [1 bytes data]

    TLSv1.2 (OUT), TLS handshake, Finished (20):

    [16 bytes data]

    TLSv1.2 (IN), TLS change cipher, Client hello (1):

    [1 bytes data]

    TLSv1.2 (IN), TLS handshake, Finished (20):

    [16 bytes data]

    SSL connection using TLSv1.2 / ECDHE-RSA-AES128-GCM-SHA256

    ALPN, server did not agree to a protocol

    Server certificate:

    subject: CN=.bintray.com start date: Sep 15 00:00:00 2018 GMT expire date: Nov 9 12:00:00 2019 GMT subjectAltName: host "dl.bintray.com" matched cert's ".bintray.com" issuer: C=US; O=DigiCert Inc; OU=www.digicert.com; CN=GeoTrust RSA CA 2018 SSL certificate verify ok.

    GET /boostorg/release/1.70.0/source/boost_1_70_0.tar.gz HTTP/1.1

    Host: dl.bintray.com

    User-Agent: curl/7.54.0

    Accept: /

    The requested URL returned error: 403 Forbidden

    stopped the pause stream!

    Closing connection 0

    TLSv1.2 (OUT), TLS alert, Client hello (1):

    [2 bytes data]

         --- LOG END ---
         error: downloading 'https://dl.bintray.com/boostorg/release/1.70.0/source/boost_1_70_0.tar.gz' failed
         status_code: 22
         status_string: "HTTP response code said error"
         log:
         --- LOG BEGIN ---
           Trying 54.93.138.218...
    

    TCP_NODELAY set

    Connected to dl.bintray.com (54.93.138.218) port 443 (#0)

    ALPN, offering http/1.1

    Cipher selection: ALL:!EXPORT:!EXPORT40:!EXPORT56:!aNULL:!LOW:!RC4:@STRENGTH

    successfully set certificate verify locations:

    CAfile: /etc/ssl/cert.pem
    CApath: none
    

    TLSv1.2 (OUT), TLS handshake, Client hello (1):

    [217 bytes data]

    TLSv1.2 (IN), TLS handshake, Server hello (2):

    [89 bytes data]

    TLSv1.2 (IN), TLS handshake, Certificate (11):

    [3593 bytes data]

    TLSv1.2 (IN), TLS handshake, Server key exchange (12):

    [333 bytes data]

    TLSv1.2 (IN), TLS handshake, Server finished (14):

    [4 bytes data]

    TLSv1.2 (OUT), TLS handshake, Client key exchange (16):

    [70 bytes data]

    TLSv1.2 (OUT), TLS change cipher, Client hello (1):

    [1 bytes data]

    TLSv1.2 (OUT), TLS handshake, Finished (20):

    [16 bytes data]

    TLSv1.2 (IN), TLS change cipher, Client hello (1):

    [1 bytes data]

    TLSv1.2 (IN), TLS handshake, Finished (20):

    [16 bytes data]

    SSL connection using TLSv1.2 / ECDHE-RSA-AES128-GCM-SHA256

    ALPN, server did not agree to a protocol

    Server certificate:

    subject: CN=.bintray.com start date: Sep 15 00:00:00 2018 GMT expire date: Nov 9 12:00:00 2019 GMT subjectAltName: host "dl.bintray.com" matched cert's ".bintray.com" issuer: C=US; O=DigiCert Inc; OU=www.digicert.com; CN=GeoTrust RSA CA 2018 SSL certificate verify ok.

    GET /boostorg/release/1.70.0/source/boost_1_70_0.tar.gz HTTP/1.1

    Host: dl.bintray.com

    User-Agent: curl/7.54.0

    Accept: /

    The requested URL returned error: 403 Forbidden

    stopped the pause stream!

    Closing connection 0

    TLSv1.2 (OUT), TLS alert, Client hello (1):

    [2 bytes data]

         --- LOG END ---
         error: downloading 'https://dl.bintray.com/boostorg/release/1.70.0/source/boost_1_70_0.tar.gz' failed
         status_code: 22
         status_string: "HTTP response code said error"
         log:
         --- LOG BEGIN ---
           Trying 54.93.138.218...
    

    TCP_NODELAY set

    Connected to dl.bintray.com (54.93.138.218) port 443 (#0)

    ALPN, offering http/1.1

    Cipher selection: ALL:!EXPORT:!EXPORT40:!EXPORT56:!aNULL:!LOW:!RC4:@STRENGTH

    successfully set certificate verify locations:

    CAfile: /etc/ssl/cert.pem
    CApath: none
    

    TLSv1.2 (OUT), TLS handshake, Client hello (1):

    [217 bytes data]

    TLSv1.2 (IN), TLS handshake, Server hello (2):

    [89 bytes data]

    TLSv1.2 (IN), TLS handshake, Certificate (11):

    [3593 bytes data]

    TLSv1.2 (IN), TLS handshake, Server key exchange (12):

    [333 bytes data]

    TLSv1.2 (IN), TLS handshake, Server finished (14):

    [4 bytes data]

    TLSv1.2 (OUT), TLS handshake, Client key exchange (16):

    [70 bytes data]

    TLSv1.2 (OUT), TLS change cipher, Client hello (1):

    [1 bytes data]

    TLSv1.2 (OUT), TLS handshake, Finished (20):

    [16 bytes data]

    TLSv1.2 (IN), TLS change cipher, Client hello (1):

    [1 bytes data]

    TLSv1.2 (IN), TLS handshake, Finished (20):

    [16 bytes data]

    SSL connection using TLSv1.2 / ECDHE-RSA-AES128-GCM-SHA256

    ALPN, server did not agree to a protocol

    Server certificate:

    subject: CN=.bintray.com start date: Sep 15 00:00:00 2018 GMT expire date: Nov 9 12:00:00 2019 GMT subjectAltName: host "dl.bintray.com" matched cert's ".bintray.com" issuer: C=US; O=DigiCert Inc; OU=www.digicert.com; CN=GeoTrust RSA CA 2018 SSL certificate verify ok.

    GET /boostorg/release/1.70.0/source/boost_1_70_0.tar.gz HTTP/1.1

    Host: dl.bintray.com

    User-Agent: curl/7.54.0

    Accept: /

    The requested URL returned error: 403 Forbidden

    stopped the pause stream!

    Closing connection 0

    TLSv1.2 (OUT), TLS alert, Client hello (1):

    [2 bytes data]

         --- LOG END ---
         error: downloading 'https://dl.bintray.com/boostorg/release/1.70.0/source/boost_1_70_0.tar.gz' failed
         status_code: 22
         status_string: "HTTP response code said error"
         log:
         --- LOG BEGIN ---
           Trying 54.93.138.218...
    

    TCP_NODELAY set

    Connected to dl.bintray.com (54.93.138.218) port 443 (#0)

    ALPN, offering http/1.1

    Cipher selection: ALL:!EXPORT:!EXPORT40:!EXPORT56:!aNULL:!LOW:!RC4:@STRENGTH

    successfully set certificate verify locations:

    CAfile: /etc/ssl/cert.pem
    CApath: none
    

    TLSv1.2 (OUT), TLS handshake, Client hello (1):

    [217 bytes data]

    TLSv1.2 (IN), TLS handshake, Server hello (2):

    [89 bytes data]

    TLSv1.2 (IN), TLS handshake, Certificate (11):

    [3593 bytes data]

    TLSv1.2 (IN), TLS handshake, Server key exchange (12):

    [333 bytes data]

    TLSv1.2 (IN), TLS handshake, Server finished (14):

    [4 bytes data]

    TLSv1.2 (OUT), TLS handshake, Client key exchange (16):

    [70 bytes data]

    TLSv1.2 (OUT), TLS change cipher, Client hello (1):

    [1 bytes data]

    TLSv1.2 (OUT), TLS handshake, Finished (20):

    [16 bytes data]

    TLSv1.2 (IN), TLS change cipher, Client hello (1):

    [1 bytes data]

    TLSv1.2 (IN), TLS handshake, Finished (20):

    [16 bytes data]

    SSL connection using TLSv1.2 / ECDHE-RSA-AES128-GCM-SHA256

    ALPN, server did not agree to a protocol

    Server certificate:

    subject: CN=.bintray.com start date: Sep 15 00:00:00 2018 GMT expire date: Nov 9 12:00:00 2019 GMT subjectAltName: host "dl.bintray.com" matched cert's ".bintray.com" issuer: C=US; O=DigiCert Inc; OU=www.digicert.com; CN=GeoTrust RSA CA 2018 SSL certificate verify ok.

    GET /boostorg/release/1.70.0/source/boost_1_70_0.tar.gz HTTP/1.1

    Host: dl.bintray.com

    User-Agent: curl/7.54.0

    Accept: /

    The requested URL returned error: 403 Forbidden

    stopped the pause stream!

    Closing connection 0

    TLSv1.2 (OUT), TLS alert, Client hello (1):

    [2 bytes data]

         --- LOG END ---
    
    opened by sl84702 31
  • Specify the mainline 'branch' for each submodule

    Specify the mainline 'branch' for each submodule

    Using the submodule.<name>.branch config option (in the .gitmodules file), specify the mainline branch for usage by git submodule update --remote. The mainline branch in most submodules is develop, but in a few it's still master. As things are (config unspecified), git uses master by default but this causes submodule updates to fail with the --remote option.

    opened by rcdailey 24
  • Added a Readme file

    Added a Readme file

    • [x] Included a Preview link and screenshot showing after and before the changes.
    • [x] Included a description of the change below.
    • [x] Squashed the commits.

    Changes done in this Pull Request

    I had added the required Readme File fromm index.html

    • Fixes #238

    Description / Changes

    I had added a readme file from the required index.html

    Screenshots if any:

    Before:

    There is no readme present.

    After:

    Screenshot from 2019-03-18 17-38-05 Screenshot from 2019-03-18 17-38-10


    opened by mohitm15 19
  • [NO MERGE] A docker build environment for boost

    [NO MERGE] A docker build environment for boost

    The intention of this pull request is to make a stable docker linux build environment for boost that contains all of the library and documentation build dependencies pre-configured. See docker/README.md for additional details.

    Not working (yet)

    • compute doesn't have access to OpenCL in the docker instance
    • mpi build doesn't seem to want to work despite having openmpi-dev?

    Undecided

    • Does this belong in the superproject or in its own submodule?
    • Are the helper scripts useful and common enough to keep or should we just use a readme and have people modify their own local environment with (power)shell scripts customized to their needs?

    More Details

    • Start by downloading boost recursively to your host and installing docker.
    • Build a docker container (docker/build.sh).
    • Run a docker container (docker/run.sh), which maps the boost directory on your host to /boost in the container.
    • Do what you would normally do to build.

    When you are in a docker instance (that's a running container), everything in the /boost directory is persistent and kept on your host. Everything else is ephemeral. So for example if you run bootstrap.sh inside the instance, quit, start a new instance, b2 will be available since it is stored inside /boost. Your normal development workflow should still apply; builds will be incremental in the instance since it is using a directory on your host to store all of the data.

    opened by jeking3 14
  • Distribution from JFROG.ORG site

    Distribution from JFROG.ORG site

    Hi,

    As the coordinating maintainer for the HAMLIB SDK (a software developers' kit based around WSJT-X and its derivatives and the Hamlib libraries) we maintain a script - Deploy-Boost.ps1 - that utilises the PowerShell command Invoke-WebRequest to download a defined version of Boost (i.e. v 1.77.0). See the script below this message as scripts cannot be uploaded.

    The supplied script has worked very well until recently.

    JFROG, your download maintainer, seems to have put in an "advertising" layer that prevents the Invoke-WebRequest function from operating properly. See Untitled

    A small "corrupted .ZIP" file is now returned to browsers as shown in that image. This is not a problem for most web browsers - but it is a problem for scripted environs that automate the process of pulling in source.

    Note that the intent of the Powershell Invoke-WebRequest is that function should behave exactly as if it was a browser.

    This layer now employed by your delivery site prevents this standard function from operating properly.

    It is fully reasonable to have techniques that support and simplify user learning to auto download tools and libraries from repositories.

    Can you please look into this?

    If your ISP is unable to resolve the issue can you please provide a location of long-term authorised mirrors that do not not utilise "advertising foulers" so that this JFROG URL can be bypassed in our code?

    Can you please advise by email - [email protected] ?

    Thanks, and keep up the AMAZING work that has set so many standards (and has itself had functionality incorporated into language standards).

    HamlibDK Coordinator for the Qt/MinGW-based HAMLIB SDK - The Hamlib and JT-ware Software Developers' Kit ! E; [email protected] ........................................

    #-----------------------------------------------------------------------------#
    # Name .........: Download-Boost.ps1
    # Project ......: Part of the JTSDK64 Tools Project
    # Version ......: 3.2.0 Beta
    # Description ..: Downloads selected Boost deployment specified in Versions.ini
    # Usage ........: Call this file directly from the command line
    #
    # Concept ......: Greg, Beam, KI7MT, <[email protected]>
    # Author .......: Hamlib SDK Contributors <[email protected]>
    # Copyright ....: Copyright (C) 2021 Hamlib SDK Contributors
    # License ......: GPL-3
    #
    #-----------------------------------------------------------------------------#
    
    Set-Location -Path $env:JTSDK_HOME
    
    # These are here temporary for Development purposes only
    #
    # Set-Location -Path $PSScriptRoot
    #
    #$env:JTSDK_HOME = "C:\JTSDK64-Tools"
    #$env:JTSDK_CONFIG = $env:JTSDK_HOME + "\config"
    #$env:JTSDK_DATA= $env:JTSDK_HOME + "\data"
    #$env:JTSDK_SRC = $env:JTSDK_HOME + "\src"
    #$env:JTSDK_TMP = $env:JTSDK_HOME + "\tmp"
    #$env:JTSDK_TOOLS = $env:JTSDK_HOME + "\tools"
    #$env:JTSDK_SCRIPTS = $env:JTSDK_TOOLS + "\scripts"
    
    # Describe Action
    
    Clear-Host
    Write-Host " "
    Write-Host "* Download Boost"
    Write-Host " "
    
    # Get hash table of configuration variables from Versions.ini
    
    $env:jtsdk64VersionConfig = "$env:JTSDK_CONFIG\Versions.ini"
    Get-Content $env:jtsdk64VersionConfig | foreach-object -begin {$configTable=@{}} -process { $k = [regex]::split($_,'='); if(($k[0].CompareTo("") -ne 0) -and ($k[0].StartsWith("[") -ne $True)) { $configTable.Add($k[0], $k[1]) } }
    
    # Retrieve Boost Version
    
    $boostv = $configTable.Get_Item("boostv")
    
    # Place into file format for Boost distribution
    # Note: Multi stage here - can be simplified.
    
    $dlFile = "boost_$boostv.zip"
    $dlFile = $dlFile.replace(".","_")
    $dlFile = $dlfile.replace("_zip",".zip")	# Formatted as the filename found on the Web
    $dLoc = $dlFile.Replace(".zip","")			# Remove the .zip extenstion [ For decompression ]
    
    # Boost Distribution URL
    
    #$dlPath = "https://dl.bintray.com/boostorg/release/$boostv/source/$dlFile"
    $dlPath = "https://boostorg.jfrog.io/artifactory/main/release/$boostv/source/$dlFile"
    
    Write-Host "  --> Requested Source: $dlPath"
    
    # Download
    
    if (!(Test-Path("$env:JTSDK_SRC\$dlFile"))) {
    	Write-Host "  --> Downloading $env:JTSDK_SRC\$dlFile" 
    	Write-Host "      `[Note: this will be *** slow ***`]"
    	try { Invoke-WebRequest $dlPath -OutFile "$env:JTSDK_SRC\$dlFile" } catch { exit(1) }
    	Write-Host "  --> Download Complete"
    } else {
    	Write-Host "  --> Souce already downloaded"
    	Write-Host "  --> File: $env:JTSDK_SRC\$dlFile"
    	Write-Host "  --> To refresh: Delete $env:JTSDK_SRC\$dlFile and re-run `'Download-Boost.ps1`'"
    }
    
    Write-Host ""
    
    # Decompression
    
    if (!(Test-Path("$env:JTSDK_SRC\$dLoc"))){
    	Write-Host "  --> Decompressing to: $env:JTSDK_SRC"
    	Write-Host "      `[Note: This will be *** very slow ***`]"
    	try { Expand-Archive "$env:JTSDK_SRC\$dlFile" -DestinationPath $env:JTSDK_SRC -Force } catch { exit(2) }
    		Write-Host "  --> Decompression complete." 
    } else {	
    	Write-Host "  --> Source already decompressed"
    	Write-Host "  --> To refresh: Delete source directory in $env:JTSDK_SRC and re-run `'Download-Boost.ps1`'"
    }
    
    Write-Host "  --> Source in $env:JTSDK_SRC\$dLoc"	
    Write-Host " "
    
    exit(0)
    
    opened by hamlibdk 13
  • Add Hana as a submodule of the master repository

    Add Hana as a submodule of the master repository

    Specifically:

    • Adds Hana's test suite to the regression tests
    • Add Hana as the libs/hana submodule
    • Add entry for Hana to libs/maintainers.txt and libs/libraries.htm

    NOTE This is not ready to be merged yet! I want to see the Travis results so I can adjust some things before this is ready.

    opened by ldionne 10
  • Make sure all headers are installed before build

    Make sure all headers are installed before build

    Add /boost//headers as a common dependency for all testing tools. The implicit dependency that was used before didn't work:

    http://boost.2283326.n4.nabble.com/testing-mpl-core-tests-not-visible-tt4667495.html#a4667510

    opened by Lastique 10
  • Update release.yml

    Update release.yml

    • Avoid Copy of all files
    • Prune all git and CI (meta) data files and folders
    • Convert line endings to Windows/Dos for the zip file

    Stripped down example run: https://github.com/Flamefire/locale/actions/runs/3481281759/jobs/5822170011

    opened by Flamefire 8
  • Prevent CXX leaking into build.sh script.

    Prevent CXX leaking into build.sh script.

    Many CI setups set CXX without user consent and without the ability to unset it. This causes the b2 build to fail as setting CXX for it is and intentional user choice that needs special care. This avoids the issue by clearing out CXX when invoking build.sh.

    opened by grafikrobot 7
  •  git submodule update --depth 1: reference is not a tree

    git submodule update --depth 1: reference is not a tree

    This was first reported by someone else on https://svn.boost.org/trac10/ticket/13293 with:

    Not sure if this is intended to be supported - but if so it's an issue with the git super-project - please file an issue on github against that.

    Summary

    Getting shallow local copy of boost submodules fails.

    How to reproduce

    git clone --depth 1 --branch boost-1.69.0 https://github.com/boostorg/boost.git boost
    cd boost
    git submodule init libs/config
    # so far so good
    git submodule update --depth 1
    # boom
    

    Expected

    Clone okay

    Observed

    fatal: reference is not a tree: 67102d043643c51104663c5b00e375c2f476cdf5
    Unable to checkout '67102d043643c51104663c5b00e375c2f476cdf5' in submodule path 'libs/config'
    

    Additional information

    Workaround: full-history submodule

    Somehow wastes bandwidth, which will not suit everyone.

    git clone --depth 1 --branch boost-1.69.0 https://github.com/boostorg/boost.git boost_works
    cd boost_works
    git submodule init libs/config
    # so far so good
    git submodule update
    

    Git version

    git --version
    
    git version 2.7.4
    

    Background information

    Background information on How to make shallow git submodules? - Stack Overflow, your mileage may very depending on your version of git.

    Any comment welcome.

    opened by fidergo-stephane-gourichon 7
  • test failures with python-3.11

    test failures with python-3.11

    With Python 3.11.1, the latest stable version, 20 of the boost-1.81.0 regression tests fail. The build procedure used:

    ./bootstrap.sh --prefix=/usr --with-python=python3 && ./b2 stage -j4 threading=multi link=shared

    Then when running tests:

    cd tools/build/test python3 test_all.py

    There are 20 failures like:

    core_at_file :FAILED failure {{{ Could not open '/tmp/tmpb3hkhs8t/on1n2 .txt' }}} changes caused by the last build command {{{ Added files : ['on1n2 .txt'] Removed files : [] Modified files: [] Touched files : [] }}} STDOUT {{{ file: on1n2 .txt }}} STDERR {{{ }}} stacktrace {{{ at line 636 of /build/boost/boost_1_81_0/tools/build/test/BoostBuild.py (fail_test) from line 590 of /build/boost/boost_1_81_0/tools/build/test/BoostBuild.py (__read) from line 595 of /build/boost/boost_1_81_0/tools/build/test/BoostBuild.py (read) from line 775 of /build/boost/boost_1_81_0/tools/build/test/BoostBuild.py (expect_content) from line 23 of /build/boost/boost_1_81_0/tools/build/test/core_at_file.py () from line 241 of (_call_with_frames_removed) from line 940 of (exec_module) from line 690 of (_load_unlocked) from line 1149 of (_find_and_load_unlocked) from line 1178 of (_find_and_load) from line 62 of /build/boost/boost_1_81_0/tools/build/test/test_all.py (run_tests) from line 373 of /build/boost/boost_1_81_0/tools/build/test/test_all.py () }}}

    With python 3.10 (or python2), all tests pass.

    opened by bdubbs 0
  • Building boost libraries with only documentation

    Building boost libraries with only documentation

    I just need to build a doc and to view it locally. I don't need to build the whole boost. How can I do it, is there any tutorials?

    I have tried this: -b2 --hash tools -cd doc -b2 And then I saw this:

    /mnt/d/repos/boost/tools/build/src/build/feature.jam:327: in validate-feature from module feature
    error: unknown feature "<format>"
    /mnt/d/repos/boost/tools/build/src/build/feature.jam:361: in expand-subfeatures-aux from module feature
    /mnt/d/repos/boost/tools/build/src/build/feature.jam:422: in feature.expand-subfeatures from module feature
    /mnt/d/repos/boost/tools/build/src/build/property.jam:572: in property.translate from module property
    /mnt/d/repos/boost/tools/build/src/build/property-set.jam:507: in property-set.create-from-user-input from module property-set
    /mnt/d/repos/boost/tools/build/src/build/property-set.jam:562: in property-set.refine-from-user-input from module property-set
    /mnt/d/repos/boost/tools/build/src/build/project.jam:752: in [email protected] from module object(project-attributes)@8616
    /mnt/d/repos/boost/tools/build/src/build/project.jam:1151: in project from module project-rules
    Jamfile.v2:13: in modules.load from module Jamfile</mnt/d/repos/boost/doc>
    /mnt/d/repos/boost/tools/build/src/build/project.jam:372: in load-jamfile from module project
    /mnt/d/repos/boost/tools/build/src/build/project.jam:64: in load from module project
    /mnt/d/repos/boost/tools/build/src/build/project.jam:142: in project.find from module project
    /mnt/d/repos/boost/tools/build/src/build-system.jam:618: in load from module build-system
    /mnt/d/repos/boost/tools/build/src/kernel/modules.jam:294: in import from module modules
    /mnt/d/repos/boost/tools/build/src/kernel/bootstrap.jam:135: in module scope from module
    

    Also I tried this: -b2 --hash tools -cd libs\json\doc -b2 And then I saw this:

    Performing configuration checks
    
        - default address-model    : 64-bit (cached) [1]
        - default architecture     : x86 (cached) [1]
        - symlinks supported       : yes (cached)
    WARNING: Unable to construct ./_reference-dir/sources.dox of type DOXYFILE with these properties: <abi>sysv <address-model>64 <architecture>x86 <asynch-exceptions>off <binary-format>elf <context-impl>fcontext <coverage>off <debug-symbols>on <deduced-address-model>64 <deduced-architecture>x86 <define>BOOST_ALL_NO_LIB=1 <doxygen.doxproc.index>no <doxygen.processor>xsltproc <doxygen:param>ABBREVIATE_BRIEF= <doxygen:param>ALIASES=esafe="@par Exception Safety" <doxygen:param>AUTOLINK_SUPPORT=NO <doxygen:param>CLASS_DIAGRAMS=NO <doxygen:param>DISTRIBUTE_GROUP_DOC=YES <doxygen:param>EXAMPLE_PATTERNS= <doxygen:param>EXPAND_ONLY_PREDEF=YES <doxygen:param>EXTRACT_ALL=YES <doxygen:param>EXTRACT_LOCAL_CLASSES=NO <doxygen:param>EXTRACT_PRIVATE=YES <doxygen:param>FILE_PATTERNS= <doxygen:param>GENERATE_HTML=NO <doxygen:param>GENERATE_XML=YES <doxygen:param>INLINE_INFO=NO <doxygen:param>INLINE_INHERITED_MEMB=YES <doxygen:param>JAVADOC_AUTOBRIEF=YES <doxygen:param>MACRO_EXPANSION=YES <doxygen:param>PREDEFINED=\
                BOOST_FORCEINLINE \
                BOOST_JSON_CLASS_DECL \
                BOOST_JSON_DECL \
                BOOST_JSON_DOCS \
                BOOST_JSON_PUBLIC \
                BOOST_SYMBOL_VISIBLE \
                "BOOST_JSON_INLINE_VARIABLE(v, t)=constexpr t v;" \
                "BOOST_JSON_NODISCARD=[[nodiscard]]" \
                "BOOST_JSON_NS_BEGIN=namespace boost { namespace json {" \
                "BOOST_JSON_NS_END=}}" <doxygen:param>PROJECT_BRIEF=JSON Library <doxygen:param>PROJECT_NAME=JSON <doxygen:param>SHOW_FILES=NO <doxygen:param>SHOW_INCLUDE_FILES=NO <doxygen:param>SHOW_NAMESPACES=NO <doxygen:param>SHOW_USED_FILES=NO <doxygen:param>SORT_MEMBERS_CTORS_1ST=YES <doxygen:param>SORT_MEMBER_DOCS=NO <doxygen:param>XML_OUTPUT=_reference-dir <exception-handling>on <extern-c-nothrow>off <format>html <hardcode-dll-paths>true <host-os>linux <implicit-dependency>object(notfile-target)@9922 <include>../../.. <inlining>off <install-dependencies>off <link>shared <local-visibility>hidden <optimization>off <os>LINUX <pch>on <preserve-test-targets>on <profiling>off <python-debugging>off <relevant>define:<relevant>toolset <relevant>link:<relevant>toolset <response-file>auto <rtti>on <runtime-debugging>on <runtime-link>shared <stdlib>native <strip>off <suppress-import-lib>false <symlink-location>project-relative <tag>@Jamfile</mnt/d/repos/boost>%Jamfile</mnt/d/repos/boost>.tag <target-os>linux <testing.execute>on <threadapi>pthread <threading>multi <toolset-gcc:version>9 <toolset>gcc <user-interface>console <variant>debug <vectorize>off <visibility>hidden <warnings-as-errors>off <warnings>on <xsl:param>boost.defaults=Boost
    WARNING: Considered these as possible generators:
    error: no generators were found for type 'DOXYFILE'
    error: and the requested properties
    error: make sure you've configured the needed tools
    See https://www.bfgroup.xyz/b2/manual/release/index.html#bbv2.overview.configuration
    To debug this problem, try the --debug-generators option.
    

    Doxygen and xsltproc have already installed.

    opened by denzor200 1
  • Missing uses_handles on boost::process::detail::posix::pipe_out

    Missing uses_handles on boost::process::detail::posix::pipe_out

    The boost::process::detail::posix::pipe_out are not inheriting boost::process::detail::uses_handles. The descriptors created by the pipe are closed by limit_handles on the forked child process.

    opened by bambu123 1
  • Where is the Boost Folder?

    Where is the Boost Folder?

    Hello, I had an old version of boost and it was working fine. But now there is no boost folder in the repo? What is the include path and where are the .hpp files please?

    opened by theMilliP 10
  • Building with precompiled headers fails under MSVC if PCH is not included

    Building with precompiled headers fails under MSVC if PCH is not included

    .\b2.exe --version: B2 4.9-git OS: Windows 10 toolset: msvc-14.3 Running in a Boost 1.80.0, as per cloning from boostorg/boost, initializing submodules and .\bootstrap.bat.

    File structure: libs/atest/Jamfile libs/atest/acpp.cpp libs/atest/apch.hpp

    Content in https://gist.github.com/anarthal/221c0ee6f3d2640fc6bba892102cf3dd

    Running with .\b2 .\libs\atest//anexe

    Fails with

    Performing configuration checks

    - default address-model    : 64-bit [1]
    - default architecture     : x86 [1]
    - symlinks supported       : no
    - junctions supported      : yes
    - hardlinks supported      : yes
    

    [1] msvc-14.3 ...found 14 targets...
    ...updating 9 targets... compile-c-c++-pch bin.v2\libs\atest\msvc-14.3\debug\threading-multi\apch.pch apch.pch.cpp compile-c-c++ bin.v2\libs\atest\msvc-14.3\debug\threading-multi\acpp.obj acpp.cpp libs\atest\acpp.cpp(2): fatal error C1010: unexpected end of file while looking for precompiled header. Did you forget to add '#include "apch.hpp"' to your source?

    call "bin.v2\standalone\msvc\msvc-14.3\msvc-setup.bat"  >nul
    

    cl /Zm800 -nologo "libs\atest\acpp.cpp" -c -Fo"bin.v2\libs\atest\msvc-14.3\debug\threading-multi\acpp.obj" -FI"libs\atest\apch.hpp" -Yu"apch.hpp" -Fp"bin.v2\libs\atest\msvc-14.3\debug\threading-multi\apch.pch" -TP /wd4675 /EHs /GR /Zc:throwingNew /Z7 /Od /Ob0 /W3 /MDd /Zc:forScope /Zc:wchar_t /Zc:inline /favor:blend -DBOOST_ALL_NO_LIB=1 -DBOOST_BUILD_PCH_ENABLED "-I."

    ...failed compile-c-c++ bin.v2\libs\atest\msvc-14.3\debug\threading-multi\acpp.obj... ...skipped <pbin.v2\libs\atest\msvc-14.3\debug\threading-multi>anexe.exe for lack of <pbin.v2\libs\atest\msvc-14.3\debug\threading-multi>acpp.obj... ...skipped <pbin.v2\libs\atest\msvc-14.3\debug\threading-multi>anexe.pdb for lack of <pbin.v2\libs\atest\msvc-14.3\debug\threading-multi>acpp.obj... ...failed updating 1 target... ...skipped 2 targets... ...updated 6 targets...

    opened by anarthal 2
  • Spelling

    Spelling

    This PR corrects misspellings identified by the check-spelling action.

    The misspellings have been reported at https://github.com/jsoref/boost/commit/2699db461dfa7e219f22eb961056f7321011715c#commitcomment-89062870

    The action reports that the changes in this PR would make it happy: https://github.com/jsoref/boost/commit/19643c51ade2a96ba08b53e259cd6f1737a175a2

    Note: this PR does not include the action. If you're interested in running a spell check on every PR and push, that can be offered separately.

    opened by jsoref 0
Owner
Boost.org
Boost provides free peer-reviewed portable C++ source libraries.
Boost.org
HTTP and WebSocket built on Boost.Asio in C++11

HTTP and WebSocket built on Boost.Asio in C++11 Branch Linux/OSX Windows Coverage Documentation Matrix master develop Contents Introduction Appearance

Boost.org 3.6k Jan 4, 2023
C++ peer to peer library, built on the top of boost

Breep What is Breep? Breep is a c++ bridged peer to peer library. What does that mean? It means that even though the network is constructed as a peer

Lucas Lazare 110 Nov 24, 2022
Asynchronous gRPC with Boost.Asio executors

asio-grpc This library provides an implementation of boost::asio::execution_context that dispatches work to a grpc::CompletionQueue. Making it possibl

Dennis 180 Dec 31, 2022
requests-like networking library using boost for C++

cq == C++ Requests cq == C++ Requests is a "Python Requests"-like C++ header-only library for sending HTTP requests. The library is inspired a lot by

null 11 Dec 15, 2021
Ole Christian Eidheim 741 Dec 27, 2022
Lightweight, header-only, Boost-based socket pool library

Stream-client This is a lightweight, header-only, Boost-based library providing client-side network primitives to easily organize and implement data t

Tinkoff.ru 12 Aug 5, 2022
Boost headers

About This repository contains a set of header files from Boost. Can be useful when using header only libraries. How to use You can easily include the

null 2 Oct 16, 2021
Packio - An asynchronous msgpack-RPC and JSON-RPC library built on top of Boost.Asio.

Header-only | JSON-RPC | msgpack-RPC | asio | coroutines This library requires C++17 and is designed as an extension to boost.asio. It will let you bu

Quentin Chateau 58 Dec 26, 2022
Boost.org signals2 module

Signals2, part of collection of the Boost C++ Libraries, is an implementation of a managed signals and slots system. License Distributed under the Boo

Boost.org 52 Dec 1, 2022
Boost.org property_tree module

Maintainer This library is currently maintained by Richard Hodges with generous support from the C++ Alliance. Build Status Branch Status develop mast

Boost.org 36 Dec 6, 2022
Boost::ASIO low-level redis client (connector)

bredis Boost::ASIO low-level redis client (connector), github gitee Features header only zero-copy (currently only for received replies from Redis) lo

Ivan Baidakou 142 Dec 8, 2022
A very simple, fast, multithreaded, platform independent HTTP and HTTPS server and client library implemented using C++11 and Boost.Asio.

A very simple, fast, multithreaded, platform independent HTTP and HTTPS server and client library implemented using C++11 and Boost.Asio. Created to be an easy way to make REST resources available from C++ applications.

Ole Christian Eidheim 2.4k Dec 23, 2022
Minimalistic socket library inspired by Asio/Boost Asio, implemented in 1 single header file

cz-spas czspas (Small Portable Asynchronous Sockets) is minimalistic socket library inspired by Asio/Boost Asio, implemented in 1 single header file.

Rui Figueira 26 Nov 30, 2022
Level up your Beat Saber experience on Quest! AnyTweaks provides various tweaks to help boost your experience on Quest, such as Bloom, FPS Counter and more.

Need help/support? Ask in one of BSMG's support channels for Quest, or join my Discord server! AnyTweaks Level up your Beat Saber experience on Quest!

kaitlyn~ 19 Nov 20, 2022
The C++ REST SDK is a Microsoft project for cloud-based client-server communication in native code using a modern asynchronous C++ API design. This project aims to help C++ developers connect to and interact with services.

Welcome! The C++ REST SDK is a Microsoft project for cloud-based client-server communication in native code using a modern asynchronous C++ API design

Microsoft 7.2k Dec 30, 2022
A library with common code used by libraries and tools around the libimobiledevice project

libimobiledevice-glue Library with common code used by the libraries and tools around the libimobiledevice project. Features The main functionality pr

libimobiledevice 41 Dec 23, 2022
A virtual network Differential GNSS server-client project using Precise Point Positioning (PPP). Global coverage. Without physical base station construction needed. An open-source virtual base station approach.

Virtual-Network-DGNSS-Project This project is the software implementation for a publicly available, open-source, client/server VN-DGNSS implementation

null 13 Oct 24, 2022
As a Teaching Assistant, this is a sample project about socket programming for my teaching in a capstone course in NTUST(National Taiwan University of Science and Technology)

socket-programming As a Teaching Assistant, this is a sample project about socket programming for my teaching in a capstone course in NTUST(National T

Chang Wei 2 Oct 26, 2021
This project is implementation of TFTP protocol from scratch

TFTP This project is implementation of TFTP protocol from scratch

Ali 4 Jul 23, 2022