github.com/0chain/gosdk@v1.17.11/_util/herumi.mk (about)

     1  ifndef PLATFORM
     2  $(error PLATFORM is not set. Unable to add platform specific targets)
     3  endif
     4  
     5  HERUMI_TARGETS:=\
     6  	clone-herumi- \
     7  	checkout-herumi \
     8  	build-herumi \
     9  	test-herumi \
    10  	install-herumi \
    11  	help
    12  
    13  #Master having build issues
    14  $(HERUMI_TARGETS): mcl_branch=master
    15  $(HERUMI_TARGETS): bls_branch=master
    16  
    17  HERUMI_DIR?=$(ROOT_DIR)/_herumi
    18  BLS_DIR?=$(HERUMI_DIR)/bls
    19  MCL_DIR?=$(HERUMI_DIR)/mcl
    20  NPROC:=8
    21  
    22  include _util/herumi_$(PLATFORM).mk
    23  
    24  install-herumi-deps: install-openssl install-gmp
    25  
    26  .PHONY: build-tools herumi-clone herumi-build herumi-install
    27  
    28  clone-herumi:
    29  	@echo Deleting directories: [$(BLS_DIR) $(MCL_DIR)]
    30  	@rm -rf $(BLS_DIR) $(MCL_DIR)
    31  	git clone http://github.com/herumi/mcl.git $(MCL_DIR)
    32  	git clone http://github.com/herumi/bls.git $(BLS_DIR)
    33  
    34  checkout-herumi:
    35  	@echo Checking out BLS: branch=$(bls_branch)
    36  	cd $(BLS_DIR); git checkout $(bls_branch)
    37  	@echo Checking out MCL: branch=$(mcl_branch)
    38  	cd $(MCL_DIR); git checkout $(mcl_branch)
    39  
    40  build-herumi:
    41  	@$(PRINT_MAG)
    42  	@echo "Building BLS: branch=$(bls_branch)"
    43  	@$(PRINT_NON)
    44  	$(MAKE) -C $(BLS_DIR) -j $(NPROC) lib/libbls256.a
    45  	@$(PRINT_MAG)
    46  	@echo "Building MCL: branch=$(mcl_branch)"
    47  	@$(PRINT_NON)
    48  	$(MAKE) -C $(MCL_DIR) -j $(NPROC) lib/libmclbn256.a
    49  
    50  test-herumi:
    51  	$(MAKE) -C $(BLS_DIR) test_go256
    52  
    53  clean-herumi:
    54  	@rm -rf $(HERUMI_DIR)/
    55  
    56  PREFIX?=/usr/local
    57  
    58  install-herumi: install-herumi-deps | clone-herumi checkout-herumi build-herumi test-herumi
    59  	@$(PRINT_MAG)
    60  	@echo "Installing MCL: branch=$(mcl_branch)"
    61  	@$(PRINT_NON)
    62  	@sudo $(MAKE) -C $(MCL_DIR) install
    63  	@$(PRINT_MAG)
    64  	@echo "Installing BLS: branch=$(bls_branch)"
    65  	@$(PRINT_NON)
    66  	@sudo $(MAKE) -C $(BLS_DIR) install
    67  	@sudo $(MAKE) ldload-herumi