Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Allow compile flags to be used for depends. #1423

Merged
merged 1 commit into from Apr 12, 2019

Conversation

Projects
None yet
3 participants
@G-UK
Copy link
Contributor

commented Mar 31, 2019

GCC compile flags can be used to optimize the build for various Arm chipsets and their extensions (i.e. Crypto), currently CXXFLAGS and CFLAGS cannot be passed to the depends build on the command line. This is due to a mixture of native and cross-compile builds using the same flags.

This change allows CXXFLAGS and CFLAGS to be called for ARM and AARCH64 via the variable "GCCFLAGS"

Example Raspberry Pi 3B running AARCH64
sudo make HOST=aarch64-linux-gnu GCCFLAGS="-march=armv8-a+crypto -mtune=cortex-a53" QT_59=1 BDB_53=1

Example Raspberry Pi ZeroW running Raspbian
sudo make HOST=arm-linux-gnueabi GCCFLAGS="-march=armv6zk -mcpu=arm1176jzf-s -mtune=arm1176jzf-s -mfpu=vfp " QT_59=1 BDB_53=1
(Note: Armv6HF cannot be built using stock GCC so this builds as soft float and is run using Debian ArmEL multi-arched)

Additionally, indents have been added where missing on the updated .mk files

Allow compile flags to be used for depends.
GCC compile flags can be used to optimise the build for various Arm chipsets and their extensions (ie. Crypto), currently CXXFLAGS and CFLAGS cannot be passed to the depends build on the command line. This is due to a mixture of native and cross-compile builds using the same flags.

This change allows CXXFLAGS and CFLAGS to be called for ARM and AARCH64 via the variable "GCCFLAGS"

Example Raspberry Pi 3B running AARCH64
sudo make HOST=aarch64-linux-gnu GCCFLAGS="-march=armv8-a+crypto -mtune=cortex-a53" QT_59=1 BDB_53=1

Example Raspberry Pi ZeroW running Raspbian
sudo make HOST=arm-linux-gnueabi GCCFLAGS="-march=armv6zk -mcpu=arm1176jzf-s -mtune=arm1176jzf-s -mfpu=vfp " QT_59=1 BDB_53=1
(Note: Armv6HF cannot be built using stock GCC so this builds as soft float and is run using Debian ArmEL multi-arched)

Additionally indents have been standardised on .mk files

@jamescowens jamescowens requested a review from TheCharlatan Apr 2, 2019

@denravonska denravonska added this to the Denise milestone Apr 4, 2019

@jamescowens jamescowens merged commit a10ef19 into gridcoin-community:development Apr 12, 2019

1 check failed

continuous-integration/travis-ci/pr The Travis CI build failed
Details

denravonska added a commit that referenced this pull request May 10, 2019

4.0.3.0-leisure
Added:
 - Replace NeuralNetwork with portable C++ scraper #1387 (@jamescowens,
   @tomasbrod, @Cycy, @TheCharlatan, @denravonska).
 - Allow compile flags to be used for depends #1423 (@G-UK).
 - Add stake splitting and side staking info to getmininginfo #1424
   (@jamescowens).
 - Add freedesktop.org desktop file and icon set #1438 (@a123b).

Changed:
 - Disable Qt for windows Travis builds #1276 (@TheCharlatan).
 - Replace use of AppCache PROJECT section with strongly-typed structures #1415
   (@cyrossignol).
 - Change dumpwallet to use appropriate data directory #1416 (@jamescowens).
 - Optimize ExtractXML() calls by avoiding unnecessary string copies #1419
   (@cyrossignol).
 - Change signature of IsLockTimeWithinMinutes #1422 (@jamescowens).
 - Restore old poll output for getmininginfo RPC #1437 (@a123b).
 - Prevent segfault when using rpc savescraperfilemanifest #1439 (@jamescowens).
 - Improve miner status messages for ineligible staking balances #1447
   (@cyrossignol).
 - Enhance scraper log archiving #1449 (@jamescowens).

Fixed:
 - Re-enable full GUI 32-bit Windows builds - part of #1387 (@jamescowens).
 - Re-activate Windows Installer #1409 (@TheCharlatan).
 - Fix Depends and Travis build issues for ARM #1417 (@jamescowens).
 - Fix syncupdate icons #1421 (@jamescowens).
 - Fix potential BOINC crash when reading projects #1426 (@cyrossignol).
 - Fix freeze when unlocking wallet #1428 (@denravonska).
 - Fix RPC after high priority alert #1432 (@denravonska).
 - Fix missing poll in GUI when most recent poll expired #1455 (@cyrossignol).

Removed:
 - Remove old, rudimentary side staking implementation #1381 (@denravonska).
 - Remove auto unlock #1402 (@denravonska).
 - Remove superblock forwarding #1430 (@denravonska).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.