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 {[email protected]{}} -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
  • 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
  • Cannot open boost lib file when building CLI dll

    Cannot open boost lib file when building CLI dll

    I am trying to build a CLR dll file in VS22 and dotnet 6.0 that references boost. When I build, I get the following error. LNK1104 cannot open file 'libboost_program_options-vc142-mt-x64-1_76.lib'

    • This file does exist.
    • I have restarted to make sure the file isn't locked.
    • I have tried building as 32 and 64 bit.
    • I have tried 3 different versions of boost

    I can build with boost in projects that are not CLI dlls.

    The problem is reproduced by this project: https://github.com/MajorMajor0/boostRepro. Any help would be much appreciated.

    opened by MajorMajor0 2
  • ValueError: Boost library location was not found!

    ValueError: Boost library location was not found!

    Hello I'm trying to install autodock Vina , and got this error .

    Boost library is not installed in this conda environment also Boost library location was not found

    I've installed conda install -c conda-forge boost

    however the issue still remain do I need to something in environment variable ? I can't figure out how to build it by myself and it seems that there' no pre-install-able (executable binary )

    opened by PrestigeDevop 1
  • Fix building Boost.Build with a chosen toolset

    Fix building Boost.Build with a chosen toolset

    👋

    Hi! This PR proposes to upstream a small change that we are shipping in Krita starting with 5.1 (https://invent.kde.org/graphics/krita/-/commit/2876937bf2dfea45645c31ebb749b1a0d08d067b).

    In short, this will enable users of the CMD bootstrap file to build Boost with a toolset other than MSVC. We use it in particular to target the llvm-mingw compiler, through a custom user-config.jam. (It also applies to the official MSYS2 CLANG* flavours, which I use for my own personal development needs.)

    cc @dimula73

    opened by amyspark 3
  • C++/WinRT UWP App fails to compile when using C++20

    C++/WinRT UWP App fails to compile when using C++20

    Hello

    I would like to use the Boost 1.80 Header-Only Libraries in my C++/WinRT UWP App. But when I switch the C++ Language Standard to "ISO C++20 Standard (/std:c++20)", then the app will not compile anymore.

    I get the following output:

    Build started...
    1>------ Build started: Project: BlankApp1, Configuration: Debug x64 ------
    1>App.cpp
    1>MainPage.cpp
    1>C:\Users\juliuszet\source\repos\BlankApp1\BlankApp1\boost\signals2\detail\lwm_win32_cs.hpp(61,49): error C2371: 'InitializeCriticalSectionEx': redefinition; different basic types (compiling source file MainPage.cpp)
    1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\synchapi.h(155): message : see declaration of 'InitializeCriticalSectionEx' (compiling source file MainPage.cpp)
    1>C:\Users\juliuszet\source\repos\BlankApp1\BlankApp1\boost\signals2\detail\lwm_win32_cs.hpp(61,49): error C2733: 'InitializeCriticalSectionEx': you cannot overload a function with 'extern "C"' linkage (compiling source file MainPage.cpp)
    1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\synchapi.h(155,1): message : see declaration of 'InitializeCriticalSectionEx' (compiling source file MainPage.cpp)
    1>C:\Users\juliuszet\source\repos\BlankApp1\BlankApp1\boost\signals2\detail\lwm_win32_cs.hpp(61,49): error C2371: 'InitializeCriticalSectionEx': redefinition; different basic types (compiling source file App.cpp)
    1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\synchapi.h(155): message : see declaration of 'InitializeCriticalSectionEx' (compiling source file App.cpp)
    1>C:\Users\juliuszet\source\repos\BlankApp1\BlankApp1\boost\signals2\detail\lwm_win32_cs.hpp(61,49): error C2733: 'InitializeCriticalSectionEx': you cannot overload a function with 'extern "C"' linkage (compiling source file App.cpp)
    1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\synchapi.h(155,1): message : see declaration of 'InitializeCriticalSectionEx' (compiling source file App.cpp)
    1>C:\Program Files (x86)\Windows Kits\10\bin\10.0.19041.0\XamlCompiler\Microsoft.Windows.UI.Xaml.Common.targets(486,5): error MSB4181: The "CompileXaml" task returned false but did not log an error.
    1>Done building project "BlankApp1.vcxproj" -- FAILED.
    ========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
    

    Steps to reproduce:

    1. Create a new project in Visual Studio 2022. Project template: "Blank App (C++/WinRT)". Do not change any settings during the project creation.
    2. Copy the "boost_1_80_0.7z\boost_1_80_0\boost" folder into your project directory (where your BlankApp1.vcxproj) is located. For me the path is "C:\Users\juliuszet\source\repos\BlankApp1\BlankApp1" <-- boost folder goes here.
    3. Add #include <boost/signals2.hpp> to your MainPage.h file, right below the #include "MainPage.g.h".
    4. Click Build --> Build Solution and notice, that it compiles successfully.
    5. Click Project --> Properties, Navigate to Configuration Properties --> C/C++ --> Language and change the C++ Language Standard to "ISO C++20 Standard (/std:c++20)".
    6. Click Build --> Build Solution and notice, that it does not compile anymore.

    After taking a closer look at the error messages in the output, I played around a bit and found out, that it does compile again, when changing a few lines of code in "boost\signals2\detail\lwm_win32_cs.hpp"

    replace this:

    #if BOOST_PLAT_WINDOWS_RUNTIME
    extern "C" __declspec(dllimport) void __stdcall InitializeCriticalSectionEx(::_RTL_CRITICAL_SECTION *, unsigned long, unsigned long);
    #else
    extern "C" __declspec(dllimport) void __stdcall InitializeCriticalSection(::_RTL_CRITICAL_SECTION *);
    #endif
    

    with this:

    extern "C" __declspec(dllimport) void __stdcall InitializeCriticalSection(::_RTL_CRITICAL_SECTION *);
    

    and replace this:

    #if BOOST_PLAT_WINDOWS_RUNTIME
            boost::signals2::detail::InitializeCriticalSectionEx(reinterpret_cast< boost::signals2::detail::rtl_critical_section* >(&cs_), 4000, 0);
    #else
            boost::signals2::detail::InitializeCriticalSection(reinterpret_cast< boost::signals2::detail::rtl_critical_section* >(&cs_)); 
    #endif
    

    with this:

            boost::signals2::detail::InitializeCriticalSection(reinterpret_cast< boost::signals2::detail::rtl_critical_section* >(&cs_)); 
    

    Could someone have a look at this to find out what the issue is and who is at fault here?

    Thank you very much in advance and have an awesome day! :)

    Kind regards JuliusZet

    opened by JuliusZet 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 Nov 24, 2022
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 167 Nov 19, 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 Nov 2, 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 53 Nov 9, 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 51 Nov 11, 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 35 Oct 20, 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 Oct 24, 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 Nov 22, 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 25 Jun 12, 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.1k Nov 26, 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 40 Nov 3, 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