You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

Makefile.prebuild 1.5 kB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. # This is triggered by Makefile.system and runs before any of the code is built.
  2. export BINARY
  3. export USE_OPENMP
  4. ifdef TARGET_CORE
  5. TARGET_MAKE = Makefile_kernel.conf
  6. TARGET_CONF = config_kernel.h
  7. else
  8. TARGET_MAKE = Makefile.conf
  9. TARGET_CONF = config.h
  10. endif
  11. # CPUIDEMU = ../../cpuid/table.o
  12. ifdef CPUIDEMU
  13. EXFLAGS = -DCPUIDEMU -DVENDOR=99
  14. endif
  15. ifeq ($(TARGET), P5600)
  16. TARGET_FLAGS = -mips32r5
  17. endif
  18. ifeq ($(TARGET), I6400)
  19. TARGET_FLAGS = -mips64r6
  20. endif
  21. ifeq ($(TARGET), P6600)
  22. TARGET_FLAGS = -mips64r6
  23. endif
  24. all: getarch_2nd
  25. ./getarch_2nd 0 >> $(TARGET_MAKE)
  26. ./getarch_2nd 1 >> $(TARGET_CONF)
  27. config.h : c_check f_check getarch
  28. perl ./c_check $(TARGET_MAKE) $(TARGET_CONF) $(CC) $(TARGET_FLAGS)
  29. ifneq ($(ONLY_CBLAS), 1)
  30. perl ./f_check $(TARGET_MAKE) $(TARGET_CONF) $(FC) $(TARGET_FLAGS)
  31. else
  32. #When we only build CBLAS, we set NOFORTRAN=2
  33. echo "NOFORTRAN=2" >> $(TARGET_MAKE)
  34. echo "NO_FBLAS=1" >> $(TARGET_MAKE)
  35. echo "F_COMPILER=GFORTRAN" >> $(TARGET_MAKE)
  36. echo "BU=_" >> $(TARGET_MAKE)
  37. echo "#define BUNDERSCORE _" >> $(TARGET_CONF)
  38. echo "#define NEEDBUNDERSCORE 1" >> $(TARGET_CONF)
  39. endif
  40. ./getarch 0 >> $(TARGET_MAKE)
  41. ./getarch 1 >> $(TARGET_CONF)
  42. getarch : getarch.c cpuid.S dummy $(CPUIDEMU)
  43. $(HOSTCC) $(CFLAGS) $(EXFLAGS) -o $(@F) getarch.c cpuid.S $(CPUIDEMU)
  44. getarch_2nd : getarch_2nd.c config.h dummy
  45. ifndef TARGET_CORE
  46. $(HOSTCC) -I. $(CFLAGS) -o $(@F) getarch_2nd.c
  47. else
  48. $(HOSTCC) -I. $(CFLAGS) -DBUILD_KERNEL -o $(@F) getarch_2nd.c
  49. endif
  50. dummy: