5661533fc4
Up to 4x faster upload files Up to 2x faster download files
55 lines
1.6 KiB
Makefile
55 lines
1.6 KiB
Makefile
# Copyright (c) 2013 The Native Client Authors. All rights reserved.
|
||
# Use of this source code is governed by a BSD-style license that can be
|
||
# found in the LICENSE file.
|
||
|
||
#
|
||
# GNU Make based build file. For details on GNU Make see:
|
||
# http://www.gnu.org/software/make/manual/make.html
|
||
#
|
||
|
||
#
|
||
# Get pepper directory for toolchain and includes.
|
||
#
|
||
# If NACL_SDK_ROOT is not set, then assume it can be found three directories up.
|
||
#
|
||
THIS_MAKEFILE := $(abspath $(lastword $(MAKEFILE_LIST)))
|
||
NACL_SDK_ROOT ?= $(abspath $(dir $(THIS_MAKEFILE))../..)
|
||
|
||
# Project Build flags
|
||
WARNINGS := -Wno-long-long -Wall -Wswitch-enum -pedantic -Werror
|
||
CXXFLAGS := -pthread -std=gnu++98 $(WARNINGS)
|
||
|
||
#
|
||
# Compute tool paths
|
||
#
|
||
GETOS := python $(NACL_SDK_ROOT)/tools/getos.py
|
||
OSHELPERS = python $(NACL_SDK_ROOT)/tools/oshelpers.py
|
||
OSNAME := $(shell $(GETOS))
|
||
RM := $(OSHELPERS) rm
|
||
|
||
PNACL_TC_PATH := $(abspath $(NACL_SDK_ROOT)/toolchain/$(OSNAME)_pnacl)
|
||
PNACL_CXX := $(PNACL_TC_PATH)/bin/pnacl-clang++
|
||
PNACL_FINALIZE := $(PNACL_TC_PATH)/bin/pnacl-finalize
|
||
CXXFLAGS := -I$(NACL_SDK_ROOT)/include
|
||
LDFLAGS := -L$(NACL_SDK_ROOT)/lib/pnacl/Release -lppapi_cpp -lppapi
|
||
|
||
#
|
||
# Disable DOS PATH warning when using Cygwin based tools Windows
|
||
#
|
||
CYGWIN ?= nodosfilewarning
|
||
export CYGWIN
|
||
|
||
|
||
# Declare the ALL target first, to make the 'all' target the default build
|
||
all: mtproto_crypto.pexe
|
||
|
||
clean:
|
||
$(RM) mtproto_crypto.pexe mtproto_crypto.bc
|
||
|
||
mtproto_crypto.bc: mtproto_crypto.cc aes_core.c aes_ige.c aes_misc.c
|
||
$(PNACL_CXX) -o $@ $^ -O2 $(CXXFLAGS) $(LDFLAGS)
|
||
# $(PNACL_CXX) -g -o $@ $^ $(CXXFLAGS) $(LDFLAGS)
|
||
|
||
mtproto_crypto.pexe: mtproto_crypto.bc
|
||
$(PNACL_FINALIZE) -o $@ $<
|