Giter Site home page Giter Site logo

andrew-hardin / cmake-fortify-demo Goto Github PK

View Code? Open in Web Editor NEW
7.0 4.0 2.0 7 KB

A demo project that integrates the Fortify C/C++ source analyzer into a CMake build system.

License: MIT License

CMake 86.65% Shell 7.81% C++ 5.54%
cmake fortify sourceanalyzer

cmake-fortify-demo's Introduction

CMake + Fortify

This project integrates the Fortify C/C++ source analyzer into a CMake build system. Here's the general idea:

# Normal:
source.cpp -> compiler -> source.o

# When using Fortify:
source.cpp -> fortify -> compiler -> source.o

Fortify acts as a shim between your source code and the compiler. This project implements the shim by creating a custom toolchain that's passed to CMake.

Getting Started

# Clone and configure the project.
mkdir build
cd build
cmake .. -DWITH_FORTIFY=ON -DFORTIFY_PROJECT_ID=sample-cpp

# Clean the Fortify project.
sourceanalyzer -b sample-cpp -clean

# Build.
make

# Generate the audit project.
sourceanalyzer -b sample-cpp -scan -f sample-cpp.fpr
ls *.fpr

# View the project in the audit workbench.
auditworkbench sample-cpp.fpr

# Question the choices that brought you to this point in
# your career.

References

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.