Skip to content

Commit 7c4f323

Browse files
author
Garner Lee
committed
Create Android.mk, preconfigured jansson_config.h and CleanSpec.mk for Android-like build systems.
1 parent dc2d54d commit 7c4f323

File tree

3 files changed

+117
-0
lines changed

3 files changed

+117
-0
lines changed

Android.mk

+29
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
LOCAL_PATH:= $(call my-dir)
2+
include $(CLEAR_VARS)
3+
4+
LOCAL_ARM_MODE := arm
5+
6+
LOCAL_SRC_FILES := \
7+
src/dump.c \
8+
src/error.c \
9+
src/hashtable.c \
10+
src/load.c \
11+
src/memory.c \
12+
src/pack_unpack.c \
13+
src/strbuffer.c \
14+
src/strconv.c \
15+
src/utf.c \
16+
src/value.c
17+
18+
LOCAL_C_INCLUDES += \
19+
$(LOCAL_PATH) \
20+
$(LOCAL_PATH)/android \
21+
$(LOCAL_PATH)/src
22+
23+
LOCAL_MODULE_TAGS := optional
24+
LOCAL_SHARED_LIBRARIES := libc
25+
LOCAL_CFLAGS += -O3
26+
27+
LOCAL_MODULE:= libjansson
28+
29+
include $(BUILD_SHARED_LIBRARY)

CleanSpec.mk

+49
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
# Copyright (C) 2007 The Android Open Source Project
2+
#
3+
# Licensed under the Apache License, Version 2.0 (the "License");
4+
# you may not use this file except in compliance with the License.
5+
# You may obtain a copy of the License at
6+
#
7+
# http://www.apache.org/licenses/LICENSE-2.0
8+
#
9+
# Unless required by applicable law or agreed to in writing, software
10+
# distributed under the License is distributed on an "AS IS" BASIS,
11+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
# See the License for the specific language governing permissions and
13+
# limitations under the License.
14+
#
15+
16+
# If you don't need to do a full clean build but would like to touch
17+
# a file or delete some intermediate files, add a clean step to the end
18+
# of the list. These steps will only be run once, if they haven't been
19+
# run before.
20+
#
21+
# E.g.:
22+
# $(call add-clean-step, touch -c external/sqlite/sqlite3.h)
23+
# $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/STATIC_LIBRARIES/libz_intermediates)
24+
#
25+
# Always use "touch -c" and "rm -f" or "rm -rf" to gracefully deal with
26+
# files that are missing or have been moved.
27+
#
28+
# Use $(PRODUCT_OUT) to get to the "out/target/product/blah/" directory.
29+
# Use $(OUT_DIR) to refer to the "out" directory.
30+
#
31+
# If you need to re-do something that's already mentioned, just copy
32+
# the command and add it to the bottom of the list. E.g., if a change
33+
# that you made last week required touching a file and a change you
34+
# made today requires touching the same file, just copy the old
35+
# touch step and add it to the end of the list.
36+
#
37+
# ************************************************
38+
# NEWER CLEAN STEPS MUST BE AT THE END OF THE LIST
39+
# ************************************************
40+
41+
# For example:
42+
#$(call add-clean-step, rm -rf $(OUT_DIR)/target/common/obj/APPS/AndroidTests_intermediates)
43+
#$(call add-clean-step, rm -rf $(OUT_DIR)/target/common/obj/JAVA_LIBRARIES/core_intermediates)
44+
#$(call add-clean-step, find $(OUT_DIR) -type f -name "IGTalkSession*" -print0 | xargs -0 rm -f)
45+
#$(call add-clean-step, rm -rf $(PRODUCT_OUT)/data/*)
46+
47+
# ************************************************
48+
# NEWER CLEAN STEPS MUST BE AT THE END OF THE LIST
49+
# ************************************************

android/jansson_config.h

+39
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
/*
2+
* Copyright (c) 2010-2012 Petri Lehtinen <[email protected]>
3+
*
4+
* Jansson is free software; you can redistribute it and/or modify
5+
* it under the terms of the MIT license. See LICENSE for details.
6+
*
7+
*
8+
* This file specifies a part of the site-specific configuration for
9+
* Jansson, namely those things that affect the public API in
10+
* jansson.h.
11+
*
12+
* The configure script copies this file to jansson_config.h and
13+
* replaces @var@ substitutions by values that fit your system. If you
14+
* cannot run the configure script, you can do the value substitution
15+
* by hand.
16+
*/
17+
18+
#ifndef JANSSON_CONFIG_H
19+
#define JANSSON_CONFIG_H
20+
21+
/* If your compiler supports the inline keyword in C, JSON_INLINE is
22+
defined to `inline', otherwise empty. In C++, the inline is always
23+
supported. */
24+
#ifdef __cplusplus
25+
#define JSON_INLINE inline
26+
#else
27+
#define JSON_INLINE inline
28+
#endif
29+
30+
/* If your compiler supports the `long long` type and the strtoll()
31+
library function, JSON_INTEGER_IS_LONG_LONG is defined to 1,
32+
otherwise to 0. */
33+
#define JSON_INTEGER_IS_LONG_LONG 1
34+
35+
/* If locale.h and localeconv() are available, define to 1,
36+
otherwise to 0. */
37+
#define JSON_HAVE_LOCALECONV 0
38+
39+
#endif

0 commit comments

Comments
 (0)