Skip to content

Instantly share code, notes, and snippets.

@FROGGS

FROGGS/config.c Secret

Last active December 26, 2015 01:59
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save FROGGS/6c57472990e44a8565d0 to your computer and use it in GitHub Desktop.
Save FROGGS/6c57472990e44a8565d0 to your computer and use it in GitHub Desktop.
/* !!!
* If you're looking at config.c and thinking of editing - this is a
* generated file. See build/config.c.in, unless you're just twiddling
* to get things to work on your platform before updating Configure,
* in which case go right ahead. :-)
* !!!
*/
#include "moar.h"
#include "gen/config.h"
#define add_entry(tc, hash, name, value) \
MVM_repr_bind_key_boxed(tc, hash, \
MVM_string_ascii_decode_nt(tc, tc->instance->VMString, name), \
MVM_repr_box_str(tc, MVM_hll_current(tc)->str_box_type, \
MVM_string_ascii_decode_nt(tc, tc->instance->VMString, value)))
MVMObject *MVM_backend_config(MVMThreadContext *tc) {
MVMObject *config = MVM_repr_alloc_init(tc, tc->instance->boot_types.BOOTHash);
MVMROOT(tc, config, {
add_entry(tc, config, "ccoptiflags", "-O3");
add_entry(tc, config, "uvrule", "$(AR) $(ARFLAGS) $@ $(UV_LINUX)");
add_entry(tc, config, "tomobjects", "3rdparty/libtommath/bn_error.o 3rdparty/libtommath/bn_fast_mp_invmod.o 3rdparty/libtommath/bn_fast_mp_montgomery_reduce.o 3rdparty/libtommath/bn_fast_s_mp_mul_digs.o 3rdparty/libtommath/bn_fast_s_mp_mul_high_digs.o 3rdparty/libtommath/bn_fast_s_mp_sqr.o 3rdparty/libtommath/bn_mp_2expt.o 3rdparty/libtommath/bn_mp_abs.o 3rdparty/libtommath/bn_mp_add.o 3rdparty/libtommath/bn_mp_add_d.o 3rdparty/libtommath/bn_mp_addmod.o 3rdparty/libtommath/bn_mp_and.o 3rdparty/libtommath/bn_mp_clamp.o 3rdparty/libtommath/bn_mp_clear.o 3rdparty/libtommath/bn_mp_clear_multi.o 3rdparty/libtommath/bn_mp_cmp.o 3rdparty/libtommath/bn_mp_cmp_d.o 3rdparty/libtommath/bn_mp_cmp_mag.o 3rdparty/libtommath/bn_mp_cnt_lsb.o 3rdparty/libtommath/bn_mp_copy.o 3rdparty/libtommath/bn_mp_count_bits.o 3rdparty/libtommath/bn_mp_div.o 3rdparty/libtommath/bn_mp_div_2.o 3rdparty/libtommath/bn_mp_div_2d.o 3rdparty/libtommath/bn_mp_div_3.o 3rdparty/libtommath/bn_mp_div_d.o 3rdparty/libtommath/bn_mp_dr_is_modulus.o 3rdparty/libtommath/bn_mp_dr_reduce.o 3rdparty/libtommath/bn_mp_dr_setup.o 3rdparty/libtommath/bn_mp_exch.o 3rdparty/libtommath/bn_mp_expt_d.o 3rdparty/libtommath/bn_mp_exptmod.o 3rdparty/libtommath/bn_mp_exptmod_fast.o 3rdparty/libtommath/bn_mp_exteuclid.o 3rdparty/libtommath/bn_mp_fread.o 3rdparty/libtommath/bn_mp_fwrite.o 3rdparty/libtommath/bn_mp_gcd.o 3rdparty/libtommath/bn_mp_get_int.o 3rdparty/libtommath/bn_mp_get_long.o 3rdparty/libtommath/bn_mp_grow.o 3rdparty/libtommath/bn_mp_init.o 3rdparty/libtommath/bn_mp_init_copy.o 3rdparty/libtommath/bn_mp_init_multi.o 3rdparty/libtommath/bn_mp_init_set.o 3rdparty/libtommath/bn_mp_init_set_int.o 3rdparty/libtommath/bn_mp_init_size.o 3rdparty/libtommath/bn_mp_invmod.o 3rdparty/libtommath/bn_mp_invmod_slow.o 3rdparty/libtommath/bn_mp_is_square.o 3rdparty/libtommath/bn_mp_jacobi.o 3rdparty/libtommath/bn_mp_karatsuba_mul.o 3rdparty/libtommath/bn_mp_karatsuba_sqr.o 3rdparty/libtommath/bn_mp_lcm.o 3rdparty/libtommath/bn_mp_lshd.o 3rdparty/libtommath/bn_mp_mod.o 3rdparty/libtommath/bn_mp_mod_2d.o 3rdparty/libtommath/bn_mp_mod_d.o 3rdparty/libtommath/bn_mp_montgomery_calc_normalization.o 3rdparty/libtommath/bn_mp_montgomery_reduce.o 3rdparty/libtommath/bn_mp_montgomery_setup.o 3rdparty/libtommath/bn_mp_mul.o 3rdparty/libtommath/bn_mp_mul_2.o 3rdparty/libtommath/bn_mp_mul_2d.o 3rdparty/libtommath/bn_mp_mul_d.o 3rdparty/libtommath/bn_mp_mulmod.o 3rdparty/libtommath/bn_mp_n_root.o 3rdparty/libtommath/bn_mp_neg.o 3rdparty/libtommath/bn_mp_or.o 3rdparty/libtommath/bn_mp_prime_fermat.o 3rdparty/libtommath/bn_mp_prime_is_divisible.o 3rdparty/libtommath/bn_mp_prime_is_prime.o 3rdparty/libtommath/bn_mp_prime_miller_rabin.o 3rdparty/libtommath/bn_mp_prime_next_prime.o 3rdparty/libtommath/bn_mp_prime_rabin_miller_trials.o 3rdparty/libtommath/bn_mp_prime_random_ex.o 3rdparty/libtommath/bn_mp_radix_size.o 3rdparty/libtommath/bn_mp_radix_smap.o 3rdparty/libtommath/bn_mp_rand.o 3rdparty/libtommath/bn_mp_read_radix.o 3rdparty/libtommath/bn_mp_read_signed_bin.o 3rdparty/libtommath/bn_mp_read_unsigned_bin.o 3rdparty/libtommath/bn_mp_reduce.o 3rdparty/libtommath/bn_mp_reduce_2k.o 3rdparty/libtommath/bn_mp_reduce_2k_l.o 3rdparty/libtommath/bn_mp_reduce_2k_setup.o 3rdparty/libtommath/bn_mp_reduce_2k_setup_l.o 3rdparty/libtommath/bn_mp_reduce_is_2k.o 3rdparty/libtommath/bn_mp_reduce_is_2k_l.o 3rdparty/libtommath/bn_mp_reduce_setup.o 3rdparty/libtommath/bn_mp_rshd.o 3rdparty/libtommath/bn_mp_set.o 3rdparty/libtommath/bn_mp_set_int.o 3rdparty/libtommath/bn_mp_set_long.o 3rdparty/libtommath/bn_mp_shrink.o 3rdparty/libtommath/bn_mp_signed_bin_size.o 3rdparty/libtommath/bn_mp_sqr.o 3rdparty/libtommath/bn_mp_sqrmod.o 3rdparty/libtommath/bn_mp_sqrt.o 3rdparty/libtommath/bn_mp_sub.o 3rdparty/libtommath/bn_mp_sub_d.o 3rdparty/libtommath/bn_mp_submod.o 3rdparty/libtommath/bn_mp_to_signed_bin.o 3rdparty/libtommath/bn_mp_to_signed_bin_n.o 3rdparty/libtommath/bn_mp_to_unsigned_bin.o 3rdparty/libtommath/bn_mp_to_unsigned_bin_n.o 3rdparty/libtommath/bn_mp_toom_mul.o 3rdparty/libtommath/bn_mp_toom_sqr.o 3rdparty/libtommath/bn_mp_toradix.o 3rdparty/libtommath/bn_mp_toradix_n.o 3rdparty/libtommath/bn_mp_unsigned_bin_size.o 3rdparty/libtommath/bn_mp_xor.o 3rdparty/libtommath/bn_mp_zero.o 3rdparty/libtommath/bn_prime_tab.o 3rdparty/libtommath/bn_reverse.o 3rdparty/libtommath/bn_s_mp_add.o 3rdparty/libtommath/bn_s_mp_exptmod.o 3rdparty/libtommath/bn_s_mp_mul_digs.o 3rdparty/libtommath/bn_s_mp_mul_high_digs.o 3rdparty/libtommath/bn_s_mp_sqr.o 3rdparty/libtommath/bn_s_mp_sub.o 3rdparty/libtommath/bncore.o");
add_entry(tc, config, "ldshared", "-shared -fPIC");
add_entry(tc, config, "sharule", "$(AR) $(ARFLAGS) $@ 3rdparty/sha1/*.o");
add_entry(tc, config, "ccinstflags", "-pg");
add_entry(tc, config, "ldlibs", "-lm -lpthread -lrt -ldl");
add_entry(tc, config, "ldimp", "");
add_entry(tc, config, "shaobjects", "3rdparty/sha1/sha1.o");
add_entry(tc, config, "hasreadline", "0");
add_entry(tc, config, "mtclean", "$(RM) 3rdparty/tinymt/libtinymt.a 3rdparty/tinymt/*.o");
add_entry(tc, config, "ccdefflags", "-D_REENTRANT -D_FILE_OFFSET_BITS=64");
add_entry(tc, config, "obj", ".o");
add_entry(tc, config, "ldflags", " -g");
add_entry(tc, config, "lddir", "-L");
add_entry(tc, config, "name", "moar");
add_entry(tc, config, "noreturnattribute", "__attribute__((noreturn))");
add_entry(tc, config, "dllexport", "__attribute__ ((visibility (\"default\")))");
add_entry(tc, config, "defs[0]", "_REENTRANT");
add_entry(tc, config, "defs[1]", "_FILE_OFFSET_BITS=64");
add_entry(tc, config, "dcclean", "cd 3rdparty/dyncall && $(MAKE) -f Makefile clean");
add_entry(tc, config, "moar", "libmoar.a");
add_entry(tc, config, "dcrule", "cd 3rdparty/dyncall && ./configure2 && CC='$(CC)' CFLAGS='$(CFLAGS)' $(MAKE) -f Makefile");
add_entry(tc, config, "ldusr", "-l%s");
add_entry(tc, config, "lnclean", "$(RM) 3rdparty/linenoise/liblinenoise.a 3rdparty/linenoise/*.o");
add_entry(tc, config, "crossconf", "");
add_entry(tc, config, "mtlib", "3rdparty/tinymt/libtinymt.a");
add_entry(tc, config, "cat", "cat");
add_entry(tc, config, "ldout", "-o ");
add_entry(tc, config, "platform", "$(PLATFORM_POSIX)");
add_entry(tc, config, "lnobjects", "3rdparty/linenoise/linenoise.o");
add_entry(tc, config, "version", "2013.10-47-g6ff2edd");
add_entry(tc, config, "uvobjects", "$(UV_LINUX)");
add_entry(tc, config, "tomlib", "3rdparty/libtommath/libtommath.a");
add_entry(tc, config, "tomrule", "$(AR) $(ARFLAGS) $@ 3rdparty/libtommath/*.o");
add_entry(tc, config, "mkflags", "");
add_entry(tc, config, "perl", "/usr/bin/perl");
add_entry(tc, config, "dll", "lib%s.so");
add_entry(tc, config, "dcbclean", "$(RM) 3rdparty/dyncall/dyncallback/libdyncallback_s.a");
add_entry(tc, config, "auxclean", "@:");
add_entry(tc, config, "ld", "gcc");
add_entry(tc, config, "laoobjects", "");
add_entry(tc, config, "dlllocal", "__attribute__ ((visibility (\"hidden\")))");
add_entry(tc, config, "mtobjects", "3rdparty/tinymt/tinymt64.o");
add_entry(tc, config, "exe", "");
add_entry(tc, config, "ldmiscflags", "");
add_entry(tc, config, "mainlibs", "libmoar.a 3rdparty/dyncall/dyncall/libdyncall_s.a 3rdparty/sha1/libsha1.a 3rdparty/dyncall/dyncallback/libdyncallback_s.a 3rdparty/linenoise/liblinenoise.a 3rdparty/tinymt/libtinymt.a 3rdparty/libtommath/libtommath.a 3rdparty/libatomic_ops/src/libatomic_ops.a 3rdparty/libuv/libuv.a 3rdparty/dyncall/dynload/libdynload_s.a $(LDLIBS)");
add_entry(tc, config, "arout", "");
add_entry(tc, config, "objflags", "");
add_entry(tc, config, "ccdebugflags", "-g");
add_entry(tc, config, "lddebugflags", "-g");
add_entry(tc, config, "os", "linux");
add_entry(tc, config, "thirdpartylibs", "3rdparty/dyncall/dyncall/libdyncall_s.a 3rdparty/sha1/libsha1.a 3rdparty/dyncall/dyncallback/libdyncallback_s.a 3rdparty/linenoise/liblinenoise.a 3rdparty/tinymt/libtinymt.a 3rdparty/libtommath/libtommath.a 3rdparty/libatomic_ops/src/libatomic_ops.a 3rdparty/libuv/libuv.a 3rdparty/dyncall/dynload/libdynload_s.a");
add_entry(tc, config, "mtrule", "$(AR) $(ARFLAGS) $@ 3rdparty/tinymt/*.o");
add_entry(tc, config, "ldoptiflags", "-O3");
add_entry(tc, config, "cc", "gcc");
add_entry(tc, config, "sh", "/bin/sh");
add_entry(tc, config, "laoclean", "cd 3rdparty/libatomic_ops/src && $(MAKE) distclean");
add_entry(tc, config, "dclib", "3rdparty/dyncall/dyncall/libdyncall_s.a");
add_entry(tc, config, "ccwarnflags", "");
add_entry(tc, config, "ldinstflags", "-pg");
add_entry(tc, config, "ccinc", "-I");
add_entry(tc, config, "ccdef", "-D");
add_entry(tc, config, "dcbrule", "@:");
add_entry(tc, config, "lnlib", "3rdparty/linenoise/liblinenoise.a");
add_entry(tc, config, "tomclean", "$(RM) 3rdparty/libtommath/libtommath.a 3rdparty/libtommath/*.o");
add_entry(tc, config, "ccswitch", "-c");
add_entry(tc, config, "be", "0");
add_entry(tc, config, "versionpatch", "47");
add_entry(tc, config, "uvclean", "$(RM) 3rdparty/libuv/libuv.a $(UV_LINUX)");
add_entry(tc, config, "arflags", "rcs");
add_entry(tc, config, "laolib", "3rdparty/libatomic_ops/src/libatomic_ops.a");
add_entry(tc, config, "dcobjects", "");
add_entry(tc, config, "nul", "/dev/null");
add_entry(tc, config, "moardll", "libmoar.so");
add_entry(tc, config, "dcbobjects", "");
add_entry(tc, config, "dllib", "3rdparty/dyncall/dynload/libdynload_s.a");
add_entry(tc, config, "mainflags", "");
add_entry(tc, config, "ccshared", "-fPIC");
add_entry(tc, config, "mknoisy", "ifneq ($(NOISY), 1)\
MSG = @echo\
CMD = @\
NOOUT = > /dev/null\
NOERR = 2> /dev/null\
endif\
");
add_entry(tc, config, "uvlib", "3rdparty/libuv/libuv.a");
add_entry(tc, config, "cflags", " -g -D_REENTRANT -D_FILE_OFFSET_BITS=64");
add_entry(tc, config, "lib", "lib%s.a");
add_entry(tc, config, "noreturnspecifier", "");
add_entry(tc, config, "moarlib", "libmoar.a");
add_entry(tc, config, "laorule", "cd 3rdparty/libatomic_ops && CC='$(CC)' CFLAGS='$(CFLAGS)' ./configure && cd src && $(MAKE) && cd ..");
add_entry(tc, config, "shaclean", "$(RM) 3rdparty/sha1/libsha1.a 3rdparty/sha1/*.o");
add_entry(tc, config, "make", "make");
add_entry(tc, config, "rm", "rm -f");
add_entry(tc, config, "dlrule", "@:");
add_entry(tc, config, "dlobjects", "");
add_entry(tc, config, "lnrule", "$(AR) $(ARFLAGS) $@ 3rdparty/linenoise/*.o");
add_entry(tc, config, "shalib", "3rdparty/sha1/libsha1.a");
add_entry(tc, config, "ccmiscflags", "");
add_entry(tc, config, "ar", "ar");
add_entry(tc, config, "ccout", "-o ");
add_entry(tc, config, "versionmajor", "2013");
add_entry(tc, config, "dllimport", "__attribute__ ((visibility (\"default\")))");
add_entry(tc, config, "dlclean", "$(RM) 3rdparty/dyncall/dynload/libdynload_s.a");
add_entry(tc, config, "config", "--prefix=../nqp/install");
add_entry(tc, config, "dcblib", "3rdparty/dyncall/dyncallback/libdyncallback_s.a");
add_entry(tc, config, "versionminor", "10");
add_entry(tc, config, "prefix", "/home/froggs/dev/nqp/install");
add_entry(tc, config, "syslibs[0]", "m");
add_entry(tc, config, "syslibs[1]", "pthread");
add_entry(tc, config, "syslibs[2]", "rt");
add_entry(tc, config, "syslibs[3]", "dl");
add_entry(tc, config, "ldsys", "-l%s");
});
return config;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment