From 57531305bcafdf37f91a48684d49fd2718ec5ca3 Mon Sep 17 00:00:00 2001 From: nobu Date: Wed, 15 May 2013 07:56:39 +0000 Subject: loadpath.c: split * loadpath.c: split load path staffs from version.c. * dmyloadpath.c: miniruby has no builtin load paths, so verconf.h is not needed. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40757 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- loadpath.c | 87 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 87 insertions(+) create mode 100644 loadpath.c (limited to 'loadpath.c') diff --git a/loadpath.c b/loadpath.c new file mode 100644 index 0000000000..ed52265087 --- /dev/null +++ b/loadpath.c @@ -0,0 +1,87 @@ +/********************************************************************** + + loadpath.c - + + $Author$ + created at: Wed May 15 14:19:50 JST 2013 + + Copyright (C) 2013 Yukihiro Matsumoto + +**********************************************************************/ + +#include "verconf.h" +#include "ruby/ruby.h" +#include "version.h" + +#ifndef RUBY_ARCH +#define RUBY_ARCH RUBY_PLATFORM +#endif +#ifndef RUBY_SITEARCH +#define RUBY_SITEARCH RUBY_ARCH +#endif +#ifdef RUBY_PLATFORM_CPU +#define RUBY_THINARCH RUBY_PLATFORM_CPU"-"RUBY_PLATFORM_OS +#endif +#ifndef RUBY_LIB_PREFIX +#ifndef RUBY_EXEC_PREFIX +#error RUBY_EXEC_PREFIX must be defined +#endif +#define RUBY_LIB_PREFIX RUBY_EXEC_PREFIX"/lib/ruby" +#endif +#ifndef RUBY_SITE_LIB +#define RUBY_SITE_LIB RUBY_LIB_PREFIX"/site_ruby" +#endif +#ifndef RUBY_VENDOR_LIB +#define RUBY_VENDOR_LIB RUBY_LIB_PREFIX"/vendor_ruby" +#endif + +typedef char ruby_lib_version_string[(int)sizeof(RUBY_LIB_VERSION) - 2]; + +#define RUBY_LIB RUBY_LIB_PREFIX "/"RUBY_LIB_VERSION +#define RUBY_SITE_LIB2 RUBY_SITE_LIB "/"RUBY_LIB_VERSION +#define RUBY_VENDOR_LIB2 RUBY_VENDOR_LIB "/"RUBY_LIB_VERSION +#ifndef RUBY_ARCH_LIB_FOR +#define RUBY_ARCH_LIB_FOR(arch) RUBY_LIB "/"arch +#endif +#ifndef RUBY_SITE_ARCH_LIB_FOR +#define RUBY_SITE_ARCH_LIB_FOR(arch) RUBY_SITE_LIB2 "/"arch +#endif +#ifndef RUBY_VENDOR_ARCH_LIB_FOR +#define RUBY_VENDOR_ARCH_LIB_FOR(arch) RUBY_VENDOR_LIB2 "/"arch +#endif + +#if !defined(LOAD_RELATIVE) || !LOAD_RELATIVE +const char ruby_exec_prefix[] = RUBY_EXEC_PREFIX; +#endif + +const char ruby_initial_load_paths[] = +#ifndef NO_INITIAL_LOAD_PATH +#ifdef RUBY_SEARCH_PATH + RUBY_SEARCH_PATH "\0" +#endif +#ifndef NO_RUBY_SITE_LIB + RUBY_SITE_LIB2 "\0" +#ifdef RUBY_THINARCH + RUBY_SITE_ARCH_LIB_FOR(RUBY_THINARCH) "\0" +#endif + RUBY_SITE_ARCH_LIB_FOR(RUBY_SITEARCH) "\0" + RUBY_SITE_LIB "\0" +#endif + +#ifndef NO_RUBY_VENDOR_LIB + RUBY_VENDOR_LIB2 "\0" +#ifdef RUBY_THINARCH + RUBY_VENDOR_ARCH_LIB_FOR(RUBY_THINARCH) "\0" +#endif + RUBY_VENDOR_ARCH_LIB_FOR(RUBY_SITEARCH) "\0" + RUBY_VENDOR_LIB "\0" +#endif + + RUBY_LIB "\0" +#ifdef RUBY_THINARCH + RUBY_ARCH_LIB_FOR(RUBY_THINARCH) "\0" +#endif + RUBY_ARCH_LIB_FOR(RUBY_ARCH) "\0" +#endif + ""; + -- cgit v1.2.3