1*f4ee7fbaSAndroid Build Coastguard Workerpackage( 2*f4ee7fbaSAndroid Build Coastguard Worker default_visibility = ["//visibility:public"], 3*f4ee7fbaSAndroid Build Coastguard Worker) 4*f4ee7fbaSAndroid Build Coastguard Worker 5*f4ee7fbaSAndroid Build Coastguard Workercc_library( 6*f4ee7fbaSAndroid Build Coastguard Worker name = "libdivsufsort", 7*f4ee7fbaSAndroid Build Coastguard Worker srcs = [ 8*f4ee7fbaSAndroid Build Coastguard Worker "lib/divsufsort.c", 9*f4ee7fbaSAndroid Build Coastguard Worker "lib/sssort.c", 10*f4ee7fbaSAndroid Build Coastguard Worker "lib/trsort.c", 11*f4ee7fbaSAndroid Build Coastguard Worker "lib/utils.c", 12*f4ee7fbaSAndroid Build Coastguard Worker ], 13*f4ee7fbaSAndroid Build Coastguard Worker hdrs = [ 14*f4ee7fbaSAndroid Build Coastguard Worker "include/config.h", 15*f4ee7fbaSAndroid Build Coastguard Worker "include/divsufsort.h", 16*f4ee7fbaSAndroid Build Coastguard Worker "include/divsufsort_private.h", 17*f4ee7fbaSAndroid Build Coastguard Worker ], 18*f4ee7fbaSAndroid Build Coastguard Worker copts = [ 19*f4ee7fbaSAndroid Build Coastguard Worker "-DHAVE_CONFIG_H=1", 20*f4ee7fbaSAndroid Build Coastguard Worker ], 21*f4ee7fbaSAndroid Build Coastguard Worker includes = ["include"], 22*f4ee7fbaSAndroid Build Coastguard Worker) 23*f4ee7fbaSAndroid Build Coastguard Worker 24*f4ee7fbaSAndroid Build Coastguard Workercommom_awk_replaces = ( 25*f4ee7fbaSAndroid Build Coastguard Worker "gsub(/#cmakedefine/, \"#define\"); " + 26*f4ee7fbaSAndroid Build Coastguard Worker "gsub(/@DIVSUFSORT_EXPORT@/, \"\"); " + 27*f4ee7fbaSAndroid Build Coastguard Worker "gsub(/@DIVSUFSORT_IMPORT@/, \"\"); " + 28*f4ee7fbaSAndroid Build Coastguard Worker "gsub(/@INLINE@/, \"inline\"); " + 29*f4ee7fbaSAndroid Build Coastguard Worker "gsub(/@INCFILE@/, \"#include <inttypes.h>\"); " + 30*f4ee7fbaSAndroid Build Coastguard Worker "gsub(/@SAUCHAR_TYPE@/, \"uint8_t\"); " + 31*f4ee7fbaSAndroid Build Coastguard Worker "gsub(/@SAINT32_TYPE@/, \"int32_t\"); " + 32*f4ee7fbaSAndroid Build Coastguard Worker "gsub(/@SAINT_PRId@/, \"PRId32\"); " 33*f4ee7fbaSAndroid Build Coastguard Worker) 34*f4ee7fbaSAndroid Build Coastguard Worker 35*f4ee7fbaSAndroid Build Coastguard Workergenrule( 36*f4ee7fbaSAndroid Build Coastguard Worker name = "config_h", 37*f4ee7fbaSAndroid Build Coastguard Worker srcs = ["include/config.h.cmake"], 38*f4ee7fbaSAndroid Build Coastguard Worker outs = ["include/config.h"], 39*f4ee7fbaSAndroid Build Coastguard Worker cmd = ("awk '{ " + 40*f4ee7fbaSAndroid Build Coastguard Worker "gsub(/@HAVE_IO_H 1@/, \"HAVE_IO_H 0\"); " + 41*f4ee7fbaSAndroid Build Coastguard Worker commom_awk_replaces + 42*f4ee7fbaSAndroid Build Coastguard Worker "print; }' $(<) > $(@)"), 43*f4ee7fbaSAndroid Build Coastguard Worker) 44*f4ee7fbaSAndroid Build Coastguard Worker 45*f4ee7fbaSAndroid Build Coastguard Workergenrule( 46*f4ee7fbaSAndroid Build Coastguard Worker name = "divsufsort_h", 47*f4ee7fbaSAndroid Build Coastguard Worker srcs = ["include/divsufsort.h.cmake"], 48*f4ee7fbaSAndroid Build Coastguard Worker outs = ["include/divsufsort.h"], 49*f4ee7fbaSAndroid Build Coastguard Worker cmd = ("awk '{ " + 50*f4ee7fbaSAndroid Build Coastguard Worker "gsub(/@W64BIT@/, \"\"); " + 51*f4ee7fbaSAndroid Build Coastguard Worker "gsub(/@SAINDEX_TYPE@/, \"int32_t\"); " + 52*f4ee7fbaSAndroid Build Coastguard Worker "gsub(/@SAINDEX_PRId@/, \"PRId32\"); " + 53*f4ee7fbaSAndroid Build Coastguard Worker commom_awk_replaces + 54*f4ee7fbaSAndroid Build Coastguard Worker "print; }' $(<) > $(@)"), 55*f4ee7fbaSAndroid Build Coastguard Worker) 56