1*f0865ec9SKyle EvansROOT_DIR=../../.. 2*f0865ec9SKyle EvansBUILD_DIR=$(ROOT_DIR)/build 3*f0865ec9SKyle Evansinclude $(ROOT_DIR)/common.mk 4*f0865ec9SKyle Evans 5*f0865ec9SKyle EvansCFLAGS += -I$(ROOT_DIR)/include/ 6*f0865ec9SKyle Evans 7*f0865ec9SKyle Evansall: nn_example fp_example curve_basic_examples curve_ecdh 8*f0865ec9SKyle Evansifeq ($(WITH_DYNAMIC_LIBS),1) 9*f0865ec9SKyle Evans# If the user asked for dynamic libraries, compile versions of our binaries against them 10*f0865ec9SKyle Evansall: nn_example_dyn fp_example_dyn curve_basic_examples_dyn curve_ecdh_dyn 11*f0865ec9SKyle Evansendif 12*f0865ec9SKyle Evans 13*f0865ec9SKyle Evansnn_example: 14*f0865ec9SKyle Evans $(VERBOSE_MAKE)$(CROSS_COMPILE)$(CC) $(BIN_CFLAGS) -DNN_EXAMPLE nn_miller_rabin.c nn_pollard_rho.c $(ROOT_DIR)/src/external_deps/print.c $(ROOT_DIR)/src/external_deps/rand.c $(LIBARITH) $(BIN_LDFLAGS) -o nn_pollard_rho 15*f0865ec9SKyle Evans 16*f0865ec9SKyle Evansfp_example: 17*f0865ec9SKyle Evans $(VERBOSE_MAKE)$(CROSS_COMPILE)$(CC) $(BIN_CFLAGS) -DFP_EXAMPLE nn_miller_rabin.c fp_square_residue.c $(ROOT_DIR)/src/external_deps/print.c $(ROOT_DIR)/src/external_deps/rand.c $(LIBARITH) $(BIN_LDFLAGS) -o fp_square_residue 18*f0865ec9SKyle Evans 19*f0865ec9SKyle Evanscurve_basic_examples: 20*f0865ec9SKyle Evans $(VERBOSE_MAKE)$(CROSS_COMPILE)$(CC) $(BIN_CFLAGS) -DCURVE_BASIC_EXAMPLES fp_square_residue.c curve_basic_examples.c $(ROOT_DIR)/src/external_deps/print.c $(ROOT_DIR)/src/external_deps/rand.c $(ROOT_DIR)/src/external_deps/time.c $(LIBEC) $(BIN_LDFLAGS) -o curve_basic_examples 21*f0865ec9SKyle Evanscurve_ecdh: 22*f0865ec9SKyle Evans $(VERBOSE_MAKE)$(CROSS_COMPILE)$(CC) $(BIN_CFLAGS) -DCURVE_ECDH curve_ecdh.c $(ROOT_DIR)/src/external_deps/print.c $(ROOT_DIR)/src/external_deps/rand.c $(BIN_LDFLAGS) $(LIBEC) -o curve_ecdh 23*f0865ec9SKyle Evans 24*f0865ec9SKyle Evans# If the user asked for dynamic libraries, compile versions of our binaries against them 25*f0865ec9SKyle Evansifeq ($(WITH_DYNAMIC_LIBS),1) 26*f0865ec9SKyle Evansnn_example_dyn: 27*f0865ec9SKyle Evans $(VERBOSE_MAKE)$(CROSS_COMPILE)$(CC) $(BIN_CFLAGS) -DNN_EXAMPLE nn_miller_rabin.c nn_pollard_rho.c $(ROOT_DIR)/src/external_deps/print.c $(ROOT_DIR)/src/external_deps/rand.c $(BIN_LDFLAGS) -L$(BUILD_DIR) -larith -o nn_pollard_rho_dyn 28*f0865ec9SKyle Evans 29*f0865ec9SKyle Evansfp_example_dyn: 30*f0865ec9SKyle Evans $(VERBOSE_MAKE)$(CROSS_COMPILE)$(CC) $(BIN_CFLAGS) -DFP_EXAMPLE nn_miller_rabin.c fp_square_residue.c $(ROOT_DIR)/src/external_deps/print.c $(ROOT_DIR)/src/external_deps/rand.c $(BIN_LDFLAGS) -L$(BUILD_DIR) -larith -o fp_square_residue_dyn 31*f0865ec9SKyle Evans 32*f0865ec9SKyle Evanscurve_basic_examples_dyn: 33*f0865ec9SKyle Evans $(VERBOSE_MAKE)$(CROSS_COMPILE)$(CC) $(BIN_CFLAGS) -DCURVE_BASIC_EXAMPLES fp_square_residue.c curve_basic_examples.c $(ROOT_DIR)/src/external_deps/print.c $(ROOT_DIR)/src/external_deps/rand.c $(ROOT_DIR)/src/external_deps/time.c $(BIN_LDFLAGS) -L$(BUILD_DIR) -lec -o curve_basic_examples_dyn 34*f0865ec9SKyle Evanscurve_ecdh_dyn: 35*f0865ec9SKyle Evans $(VERBOSE_MAKE)$(CROSS_COMPILE)$(CC) $(BIN_CFLAGS) -DCURVE_ECDH curve_ecdh.c $(ROOT_DIR)/src/external_deps/print.c $(ROOT_DIR)/src/external_deps/rand.c $(BIN_LDFLAGS) -L$(BUILD_DIR) -lec -o curve_ecdh_dyn 36*f0865ec9SKyle Evansendif 37*f0865ec9SKyle Evans 38*f0865ec9SKyle Evans 39*f0865ec9SKyle Evansclean: 40*f0865ec9SKyle Evans @rm -f nn_pollard_rho fp_square_residue curve_basic_examples curve_ecdh 41*f0865ec9SKyle Evans @rm -f nn_pollard_rho_dyn fp_square_residue_dyn curve_basic_examples_dyn curve_ecdh_dyn 42*f0865ec9SKyle Evans 43*f0865ec9SKyle Evans.PHONY: all clean 16 32 64 debug debug16 debug32 debug64 force_arch32 force_arch64 44