add my scripts directory to git

calculate-0.9.5
Ray Strode 17 years ago
parent 06c5d0210b
commit b4aa90f11c

@ -0,0 +1,8 @@
SUBDIRS =
noinst_SCRIPTS = new-object.sh
scriptsdir = $(libexecdir)/plymouth
scripts_SCRIPTS = plymouth-update-initrd.sh
MAINTAINERCLEANFILES = Makefile.in

@ -0,0 +1,617 @@
# The type of line endings
newlines = lf # auto/lf/crlf/cr
# The original size of tabs in the input
input_tab_size = 8 # number
# The ascii value of the string escape char, usually 92 (\). (Pawn)
string_escape_char = 92 # number
# The number of columns to indent per level.
# Usually 2, 3, 4, or 8.
indent_columns = 2 # number
# How to use tabs when indenting code
# 0=spaces only
# 1=indent with tabs, align with spaces
# 2=indent and align with tabs
indent_with_tabs = 0 # number
# Whether to indent strings broken by '\' so that they line up
indent_align_string = false # false/true
# Spaces to indent '{' from level
indent_brace = 2 # number
# Whether braces are indented to the body level
indent_braces = false # false/true
# Indent based on the size of the brace parent, ie 'if' => 3 spaces, 'for' => 4 spaces, etc.
indent_brace_parent = false # false/true
# Whether the 'namespace' body is indented
indent_namespace = false # false/true
# Whether the 'class' body is indented
indent_class = false # false/true
# Whether to indent the stuff after a leading class colon
indent_class_colon = false # false/true
# Whether to indent continued function call parameters one indent level (true) or aligns instead of indent (false)
indent_func_call_param = false # false/true
# The number of spaces to indent a continued '->' or '.'
# Usually set to 0, 1, or indent_columns.
indent_member = 0 # number
# Spaces to indent single line ('//') comments on lines before code
indent_sing_line_comments = 0 # number
# Spaces to indent 'case' from 'switch'
# Usually 0 or indent_columns.
indent_switch_case = 2 # number
# Spaces to indent '{' from 'case'.
# By default, the brace will appear under the 'c' in case.
# Usually set to 0 or indent_columns.
indent_case_brace = 2 # number
# Whether to indent comments found in first column
indent_col1_comment = false # false/true
# How to indent goto labels
# >0 : absolute column where 1 is the leftmost column
# <=0 : subtract from brace indent
indent_label = 1 # number
# Same as indent_label, but for access specifiers that are followed by a colon
indent_access_spec = 1 # number
# If an open paren is followed by a newline, indent the next line so that it lines up after the open paren (not recommended)
indent_paren_nl = false # false/true
# If an open square is followed by a newline, indent the next line so that it lines up after the open square (not recommended)
indent_square_nl = false # false/true
#
# Spacing options
#
# Add or remove space around arithmetic operator '+', '-', '/', '*', etc
sp_arith = add # ignore/add/remove/add
# Add or remove space around assignment operator '=', '+=', etc
sp_assign = add # ignore/add/remove/add
# Add or remove space around boolean operators '&&' and '||'
sp_bool = add # ignore/add/remove/add
# Add or remove space around compare operator '<', '>', '==', etc
sp_compare = add # ignore/add/remove/add
# Add or remove space inside '(' and ')'
sp_inside_paren = remove # ignore/add/remove/add
# Add or remove space between nested parens
sp_paren_paren = remove # ignore/add/remove/add
# Whether to balance spaces inside nested parens
sp_balance_nested_parens = false # false/true
# Add or remove space between ')' and '{'
sp_paren_brace = add # ignore/add/remove/add
# Add or remove space before pointer star '*'
sp_before_ptr_star = add # ignore/add/remove/add
# Add or remove space between pointer stars '*'
sp_between_ptr_star = remove # ignore/add/remove/add
# Add or remove space after pointer star '*'
sp_after_ptr_star = remove # ignore/add/remove/add
# Add or remove space before reference sign '&'
sp_before_byref = add # ignore/add/remove/add
# Add or remove space after reference sign '&'
sp_after_byref = remove # ignore/add/remove/add
# Add or remove space before '<>'
sp_before_angle = add # ignore/add/remove/add
# Add or remove space after '<>'
sp_after_angle = add # ignore/add/remove/add
# Add or remove space before '(' of 'if', 'for', 'switch', and 'while'
sp_before_sparen = add # ignore/add/remove/add
# Add or remove space inside if-condition '(' and ')'
sp_inside_sparen = remove # ignore/add/remove/add
# Add or remove space after ')' of 'if', 'for', 'switch', and 'while'
sp_after_sparen = add # ignore/add/remove/add
# Add or remove space between ')' and '{' of 'if', 'for', 'switch', and 'while'
sp_sparen_brace = add # ignore/add/remove/add
# Add or remove space before empty statement ';' on 'if', 'for' and 'while'
sp_special_semi = add # ignore/add/remove/add
# Add or remove space before ';'
sp_before_semi = remove # ignore/add/remove/add
# Add or remove space before ';' in 'for' statements
sp_before_semi_for = remove # ignore/add/remove/add
# Add or remove space before '[' (except '[]')
sp_before_square = remove # ignore/add/remove/add
# Add or remove space before '[]'
sp_before_squares = remove # ignore/add/remove/add
# Add or remove space inside '[' and ']'
sp_inside_square = remove # ignore/add/remove/add
# Add or remove space after ','
sp_after_comma = add # ignore/add/remove/add
# Add or remove space before ','
sp_before_comma = remove # ignore/add/remove/add
# Add or remove space between 'operator' and operator sign
sp_after_operator = remove # ignore/add/remove/add
# Add or remove space after cast
sp_after_cast = add # ignore/add/remove/add
# Add or remove space between 'sizeof' and '('
sp_sizeof_paren = add # ignore/add/remove/add
# Add or remove space after the tag keyword (Pawn)
sp_after_tag = ignore # ignore/add/remove/add
# Add or remove space inside enum '{' and '}'
sp_inside_braces_enum = add # ignore/add/remove/add
# Add or remove space inside struct/union '{' and '}'
sp_inside_braces_struct = add # ignore/add/remove/add
# Add or remove space inside '{' and '}'
sp_inside_braces = add # ignore/add/remove/add
# Add or remove space inside '<' and '>'
sp_inside_angle = remove # ignore/add/remove/add
# Add or remove space between return type and function name
# A minimum of 1 is addd except for pointer return types.
sp_type_func = ignore # ignore/add/remove/add
# Add or remove space between function name and '(' on function declaration
sp_func_proto_paren = add # ignore/add/remove/add
# Add or remove space between function name and '(' on function definition
sp_func_def_paren = add # ignore/add/remove/add
# Add or remove space inside empty function '()'
sp_inside_fparens = ignore # ignore/add/remove/add
# Add or remove space inside function '(' and ')'
sp_inside_fparen = ignore # ignore/add/remove/add
# Add or remove space between ']' and '(' when part of a function call.
sp_square_fparen = add # ignore/add/remove/add
# Add or remove space between ')' and '{' of function
sp_fparen_brace = add # ignore/add/remove/add
# Add or remove space between function name and '(' on function calls
sp_func_call_paren = add # ignore/add/remove/add
# Add or remove space between a constructor/destructor and the open paren
sp_func_class_paren = ignore # ignore/add/remove/add
# Add or remove space between 'return' and '('
sp_return_paren = add # ignore/add/remove/add
# Add or remove space between macro and value
sp_macro = ignore # ignore/add/remove/add
# Add or remove space between macro function ')' and value
sp_macro_func = ignore # ignore/add/remove/add
# Add or remove space between 'else' and '{' if on the same line
sp_else_brace = add # ignore/add/remove/add
# Add or remove space between '}' and 'else' if on the same line
sp_brace_else = add # ignore/add/remove/add
# Add or remove space between 'catch' and '{' if on the same line
sp_catch_brace = ignore # ignore/add/remove/add
# Add or remove space between '}' and 'catch' if on the same line
sp_brace_catch = ignore # ignore/add/remove/add
# Add or remove space between 'finally' and '{' if on the same line
sp_finally_brace = ignore # ignore/add/remove/add
# Add or remove space between '}' and 'finally' if on the same line
sp_brace_finally = ignore # ignore/add/remove/add
# Add or remove space between 'try' and '{' if on the same line
sp_try_brace = ignore # ignore/add/remove/add
# Add or remove space between get/set and '{' if on the same line
sp_getset_brace = ignore # ignore/add/remove/add
#
# Code alignment (not left column spaces/tabs)
#
# Whether to keep non-indenting tabs
align_keep_tabs = false # false/true
# Whether to use tabs for alinging
align_with_tabs = false # false/true
# Whether to bump out to the next tab when aligning
align_on_tabstop = false # false/true
# Whether to left-align numbers
align_number_left = false # false/true
# Align variable definitions in prototypes and functions
align_func_params = true # false/true
# The span for aligning variable definitions (0=don't align)
align_var_def_span = 0 # number
# How to align the star in variable definitions.
# 0=Part of the type
# 1=Part of the variable
# 2=Dangling
align_var_def_star_style = 2 # number
# The threshold for aligning variable definitions (0=no limit)
align_var_def_thresh = 0 # number
# Whether to align the colon in struct bit fields
align_var_def_colon = false # false/true
# Whether to align inline struct/enum/union variable definitions
align_var_def_inline = false # false/true
# The span for aligning on '=' in assignments (0=don't align)
align_assign_span = 0 # number
# The threshold for aligning on '=' in assignments (0=no limit)
align_assign_thresh = 0 # number
# The span for aligning on '=' in enums (0=don't align)
align_enum_equ_span = 0 # number
# The threshold for aligning on '=' in enums (0=no limit)
align_enum_equ_thresh = 0 # number
# The span for aligning struct/union (0=don't align)
align_var_struct_span = 0 # number
# The span for aligning struct initializer values (0=don't align)
align_struct_init_span = 0 # number
# The minimum space between the type and the synonym of a typedef
align_typedef_gap = 1 # number
# The span for aligning single-line typedefs (0=don't align)
align_typedef_span = 0 # number
# Controls the positioning of the '*' in typedefs. Just try it.
# 0: Align on typdef type, ignore '*'
# 1: The '*' is part of type name: typedef int *pint;
# 2: The '*' is part of the type, but dangling: typedef int *pint;
align_typedef_star_style = 2 # number
# The span for aligning comments that end lines (0=don't align)
align_right_cmt_span = 0 # number
# The span for aligning function prototypes (0=don't align)
align_func_proto_span = 0 # number
# Whether to align macros wrapped with a backslash and a newline
align_nl_cont = false # false/true
# The minimum space between label and value of a preprocessor define
align_pp_define_gap = 0 # number
# The span for aligning on '#define' bodies (0=don't align)
align_pp_define_span = 0 # number
#
# Newline adding and removing options
#
# Try to limit code width to N number of columns
code_width = 80 # number
# Whether to collapse empty blocks between '{' and '}'
nl_collapse_empty_body = true # false/true
# Don't touch one-line function bodies inside a class xx { } body
nl_class_leave_one_liners = false # false/true
# Add or remove newlines at the start of the file
nl_start_of_file = ignore # ignore/add/remove/add
# The number of newlines at the start of the file (only used if nl_start_of_file is 'add' or 'add'
nl_start_of_file_min = 0 # number
# Add or remove newline at the end of the file
nl_end_of_file = add # ignore/add/remove/add
# The number of newlines at the end of the file (only used if nl_end_of_file is 'add' or 'add')
nl_end_of_file_min = 1 # number
# Add or remove newline between '=' and '{'
nl_assign_brace = ignore # ignore/add/remove/add
# The number of newlines after a block of variable definitions
nl_func_var_def_blk = 1 # number
# Add or remove newline between function call and '('
nl_fcall_brace = ignore # ignore/add/remove/add
# Add or remove newline between 'enum' and '{'
nl_enum_brace = add # ignore/add/remove/add
# Add or remove newline between 'struct and '{'
nl_struct_brace = add # ignore/add/remove/add
# Add or remove newline between 'union' and '{'
nl_union_brace = add # ignore/add/remove/add
# Add or remove newline between 'if' and '{'
nl_if_brace = add # ignore/add/remove/add
# Add or remove newline between '}' and 'else'
nl_brace_else = add # ignore/add/remove/add
# Add or remove newline between 'else if' and '{'
# If set to ignore, nl_if_brace is used instead
nl_elseif_brace = add # ignore/add/remove/add
# Add or remove newline between 'else' and '{'
nl_else_brace = add # ignore/add/remove/add
# Add or remove newline between '}' and 'finally'
nl_brace_finally = add # ignore/add/remove/add
# Add or remove newline between 'finally' and '{'
nl_finally_brace = add # ignore/add/remove/add
# Add or remove newline between 'try' and '{'
nl_try_brace = add # ignore/add/remove/add
# Add or remove newline between get/set and '{'
nl_getset_brace = ignore # ignore/add/remove/add
# Add or remove newline between 'for' and '{'
nl_for_brace = add # ignore/add/remove/add
# Add or remove newline between 'catch' and '{'
nl_catch_brace = ignore # ignore/add/remove/add
# Add or remove newline between '}' and 'catch'
nl_brace_catch = ignore # ignore/add/remove/add
# Add or remove newline between 'while' and '{'
nl_while_brace = add # ignore/add/remove/add
# Add or remove newline between 'do' and '{'
nl_do_brace = add # ignore/add/remove/add
# Add or remove newline between '}' and 'while' of 'do' statement
nl_brace_while = add # ignore/add/remove/add
# Add or remove newline between 'switch' and '{'
nl_switch_brace = add # ignore/add/remove/add
# Whether to put a newline before 'case' statement
nl_before_case = true # false/true
# Whether to put a newline after 'case' statement
nl_after_case = false # false/true
# Newline between namespace and {
nl_namespace_brace = ignore # ignore/add/remove/add
# Add or remove newline between 'template<>' and 'class'
nl_template_class = ignore # ignore/add/remove/add
# Add or remove newline between 'class' and '{'
nl_class_brace = ignore # ignore/add/remove/add
# Add or remove newline after each ',' in the constructor member initialization
nl_class_init_args = ignore # ignore/add/remove/add
# Add or remove newline between return type and function name in definition
nl_func_type_name = ignore # ignore/add/remove/add
# Add or remove newline after '(' in a function declaration
nl_func_decl_start = remove # ignore/add/remove/add
# Add or remove newline after each ',' in a function declaration
nl_func_decl_args = add # ignore/add/remove/add
# Add or remove newline before the ')' in a function declaration
nl_func_decl_end = remove # ignore/add/remove/add
# Add or remove newline between function signature and '{'
nl_fdef_brace = add # ignore/add/remove/add
# Whether to put a newline after 'return' statement
nl_after_return = false # false/true
# Whether to put a newline after semicolons, except in 'for' statements
nl_after_semicolon = true # false/true
# Whether to put a newline after brace open
nl_after_brace_open = true # false/true
# Whether to alter newlines in '#define' macros
nl_define_macro = false # false/true
# Whether to not put blanks after '#ifxx', '#elxx', or before '#endif'
nl_squeeze_ifdef = false # false/true
# Add or remove newline before 'if'
nl_before_if = ignore # ignore/add/remove/add
# Add or remove newline after 'if'
nl_after_if = remove # ignore/add/remove/add
# Add or remove newline before 'for'
nl_before_for = ignore # ignore/add/remove/add
# Add or remove newline after 'for'
nl_after_for = ignore # ignore/add/remove/add
# Add or remove newline before 'while'
nl_before_while = ignore # ignore/add/remove/add
# Add or remove newline after 'while'
nl_after_while = ignore # ignore/add/remove/add
# Add or remove newline before 'switch'
nl_before_switch = ignore # ignore/add/remove/add
# Add or remove newline after 'switch'
nl_after_switch = ignore # ignore/add/remove/add
# Add or remove newline before 'do'
nl_before_do = ignore # ignore/add/remove/add
# Add or remove newline after 'do'
nl_after_do = ignore # ignore/add/remove/add
# Whether to double-space commented-entries in struct/enum
nl_ds_struct_enum_cmt = false # false/true
#
# Positioning options
#
# The position of boolean operators in wrapped expressions
pos_bool = lead # ignore/lead/trail
# The position of colons between constructor and member initialization
pos_class_colon = ignore # ignore/lead/trail
# Whether to fully split long 'for' statements at semi-colons
ls_for_split_full = true # false/true
# Whether to fully split long function protos/calls at commas
ls_func_split_full = true # false/true
#
# Blank line options
#
# The maximum consecutive newlines
nl_max = 2 # number
# The number of newlines after a function prototype, if followed by another function prototype
nl_after_func_proto = 1 # number
# The number of newlines after a function prototype, if not followed by another function prototype
nl_after_func_proto_group = 2 # number
# The number of newlines after '}' of a multi-line function body
nl_after_func_body = 2 # number
# The number of newlines after '}' of a single line function body
nl_after_func_body_one_liner = 2 # number
# The minimum number of newlines before a multi-line comment.
# Doesn't apply if after a brace open or another multi-line comment.
nl_before_block_comment = 2 # number
# The minimum number of newlines before a single-line C comment.
# Doesn't apply if after a brace open or other single-line C comments.
nl_before_c_comment = 2 # number
# The minimum number of newlines before a CPP comment.
# Doesn't apply if after a brace open or other CPP comments.
nl_before_cpp_comment = 0 # number
# Whether to remove blank lines after '{'
eat_blanks_after_open_brace = true # false/true
# Whether to remove blank lines before '}'
eat_blanks_before_close_brace = true # false/true
#
# Code modifying options (non-whitespace)
#
# Add or remove braces on single-line 'do' statement
mod_full_brace_do = add # ignore/add/remove/add
# Add or remove braces on single-line 'for' statement
mod_full_brace_for = remove # ignore/add/remove/add
# Add or remove braces on single-line function defintions. (Pawn)
mod_full_brace_function = ignore # ignore/add/remove/add
# Add or remove braces on single-line 'if' statement
mod_full_brace_if = remove # ignore/add/remove/add
# Don't remove braces around statements that span N newlines
mod_full_brace_nl = 0 # number
# Add or remove braces on single-line 'while' statement
mod_full_brace_while = remove # ignore/add/remove/add
# Add or remove unnecessary paren on 'return' statement
mod_paren_on_return = remove # ignore/add/remove/add
# Whether to change optional semicolons to real semicolons
mod_pawn_semicolon = false # false/true
# Add parens on 'while' and 'if' statement around bools
mod_full_paren_if_bool = true # false/true
#
# Comment modifications
#
# Whether to group cpp-comments that look like they are in a block
cmt_cpp_group = false # false/true
# Whether to put an empty '/*' on the first line of the combined cpp-comment
cmt_cpp_nl_start = false # false/true
# Whether to put a newline before the closing '*/' of the combined cpp-comment
cmt_cpp_nl_end = false # false/true
# Whether to change cpp-comments into c-comments
cmt_cpp_to_c = true # false/true
# Whether to put a star on subsequent comment lines
cmt_star_cont = true # false/true
# The number of spaces to insert at the start of subsequent comment lines
cmt_sp_before_star_cont = 0 # number
# The number of spaces to insert after the star on subsequent comment lines
cmt_sp_after_star_cont = 1 # number
#
# Preprocessor options
#
# Add or remove indent of preprocessor directives
pp_indent = ignore # ignore/add/remove/add
# Add or remove space between # and, say, define
pp_space = remove # ignore/add/remove/add

@ -0,0 +1,389 @@
#!/bin/bash
NAMESPACE="Ply"
AUTHOR="YOUR NAME <youremail@here.com>"
#-----------------------------------------------------------------------------
uppercase ()
{
echo "${1}" | tr 'a-z' 'A-Z'
}
lowercase ()
{
echo "${1}" | tr 'A-Z' 'a-z'
}
change_character ()
{
echo "${1}" | tr "${2}" "${3}"
}
delete_character ()
{
echo "${1}" | tr -d "${2}"
}
#-----------------------------------------------------------------------------
MACRO_NAMESPACE="$(change_character $(uppercase ${NAMESPACE}) '-' '_')"
METHOD_NAMESPACE="$(change_character $(lowercase ${NAMESPACE}) '-' '_')"
OBJECT_NAME="$(delete_character ${1} '-')"
MACRO_OBJECT_NAME="$(change_character $(uppercase ${1}) '-' '_')"
METHOD_OBJECT_NAME="$(change_character $(lowercase ${1}) '-' '_')"
FULL_OBJECT_NAME="$(delete_character ${NAMESPACE} '-')${OBJECT_NAME}"
SHORT_OBJECT_NAME="$(lowercase $(echo ${1} | awk -F- '{print $NF}'))"
HEADER_FILENAME="$(lowercase ${NAMESPACE}-${1}).h"
HEADER_GUARD="$(change_character $(change_character $(uppercase ${HEADER_FILENAME}) '-' '_') '.' '_')"
SOURCE_FILENAME="$(lowercase ${NAMESPACE}-${1}).c"
MACRO_PREFIX="${MACRO_NAMESPACE}_${MACRO_OBJECT_NAME}"
METHOD_PREFIX="${METHOD_NAMESPACE}_${METHOD_OBJECT_NAME}"
ERROR_QUARK="${METHOD_NAMESPACE}-$(lowercase ${1})"
HUMAN_READABLE_NAME=$(change_character $(lowercase ${1}) '-' ' ')
#-----------------------------------------------------------------------------
cat <<  > ${HEADER_FILENAME}
/* vim: ts=4 sw=2 expandtab autoindent cindent
* ${HEADER_FILENAME} - ${2}
*
* Copyright (C) $(date +%Y) ${AUTHOR}
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2, or (at your option)
* any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
* 02111-1307, USA.
*
* Written By: ${AUTHOR}
*/
#ifndef ${HEADER_GUARD}
#define ${HEADER_GUARD}
#include <glib.h>
#include <glib-object.h>
G_BEGIN_DECLS
#define ${MACRO_NAMESPACE}_TYPE_${MACRO_OBJECT_NAME} (${METHOD_PREFIX}_get_type ())
#define ${MACRO_PREFIX}(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), ${MACRO_NAMESPACE}_TYPE_${MACRO_OBJECT_NAME}, ${FULL_OBJECT_NAME}))
#define ${MACRO_PREFIX}_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), ${MACRO_NAMESPACE}_TYPE_${MACRO_OBJECT_NAME}, ${FULL_OBJECT_NAME}Class))
#define ${MACRO_NAMESPACE}_IS_${MACRO_OBJECT_NAME}(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), ${MACRO_NAMESPACE}_TYPE_${MACRO_OBJECT_NAME}))
#define ${MACRO_NAMESPACE}_IS_${MACRO_OBJECT_NAME}_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), ${MACRO_NAMESPACE}_TYPE_${MACRO_OBJECT_NAME}))
#define ${MACRO_PREFIX}_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), ${MACRO_NAMESPACE}_TYPE_${MACRO_OBJECT_NAME}, ${FULL_OBJECT_NAME}Class))
#define ${MACRO_PREFIX}_ERROR (${METHOD_PREFIX}_error_quark ())
typedef struct _${FULL_OBJECT_NAME} ${FULL_OBJECT_NAME};
typedef struct _${FULL_OBJECT_NAME}Class ${FULL_OBJECT_NAME}Class;
typedef struct _${FULL_OBJECT_NAME}Private ${FULL_OBJECT_NAME}Private;
typedef enum _${FULL_OBJECT_NAME}Error ${FULL_OBJECT_NAME}Error;
struct _${FULL_OBJECT_NAME}
{
GObject parent;
/*< private >*/
${FULL_OBJECT_NAME}Private *priv;
};
struct _${FULL_OBJECT_NAME}Class
{
GObjectClass parent_class;
/* signals */
#if 0
void (* foo) (${FULL_OBJECT_NAME} *${SHORT_OBJECT_NAME});
#endif
};
enum _${FULL_OBJECT_NAME}Error
{
${MACRO_PREFIX}_ERROR_GENERIC = 0,
};
#ifndef ${MACRO_NAMESPACE}_HIDE_FUNCTION_DECLARATIONS
GType ${METHOD_PREFIX}_get_type (void);
GQuark ${METHOD_PREFIX}_error_quark (void);
${FULL_OBJECT_NAME} *${METHOD_PREFIX}_new (void) G_GNUC_MALLOC;
#endif
G_END_DECLS
#endif /* ${HEADER_GUARD} */

#-----------------------------------------------------------------------------
cat <<  > ${SOURCE_FILENAME}
/* vim: ts=4 sw=2 expandtab autoindent cindent
* ${SOURCE_FILENAME} - ${2}
*
* Copyright (C) $(date +%Y) ${AUTHOR}
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2, or (at your option)
* any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
* 02111-1307, USA.
*
* Written by: ${AUTHOR}
*/
#include "config.h"
#include "${HEADER_FILENAME}"
#include <errno.h>
#include <string.h>
#include <glib.h>
#include <glib-object.h>
#include <glib/gi18n.h>
struct _${FULL_OBJECT_NAME}Private
{
int bar;
};
static void ${METHOD_PREFIX}_finalize (GObject *object);
#if 0
static void ${METHOD_PREFIX}_class_install_signals (${FULL_OBJECT_NAME}Class *${SHORT_OBJECT_NAME}_class);
static void ${METHOD_PREFIX}_class_install_properties (${FULL_OBJECT_NAME}Class *${SHORT_OBJECT_NAME}_class);
static void ${METHOD_PREFIX}_set_property (GObject *object,
guint prop_id,
const GValue *value,
GParamSpec *pspec);
static void ${METHOD_PREFIX}_get_property (GObject *object,
guint prop_id,
GValue *value,
GParamSpec *pspec);
enum
{
PROP_0 = 0,
PROP_BAR
};
#define ${MACRO_PREFIX}_DEFAULT_BAR 1
enum
{
FOO = 0,
NUMBER_OF_SIGNALS
};
static guint ${METHOD_PREFIX}_signals[NUMBER_OF_SIGNALS];
#endif
G_DEFINE_TYPE (${FULL_OBJECT_NAME}, ${METHOD_PREFIX}, G_TYPE_OBJECT);
static void
${METHOD_PREFIX}_class_init (${FULL_OBJECT_NAME}Class *${SHORT_OBJECT_NAME}_class)
{
GObjectClass *object_class;
object_class = G_OBJECT_CLASS (${SHORT_OBJECT_NAME}_class);
object_class->finalize = ${METHOD_PREFIX}_finalize;
#if 0
${METHOD_PREFIX}_class_install_properties (${SHORT_OBJECT_NAME}_class);
${METHOD_PREFIX}_class_install_signals (${SHORT_OBJECT_NAME}_class);
#endif
g_type_class_add_private (${SHORT_OBJECT_NAME}_class, sizeof (${FULL_OBJECT_NAME}Private));
}
#if 0
static void
${METHOD_PREFIX}_class_install_signals (${FULL_OBJECT_NAME}Class *${SHORT_OBJECT_NAME}_class)
{
GObjectClass *object_class;
object_class = G_OBJECT_CLASS (${SHORT_OBJECT_NAME}_class);
${METHOD_PREFIX}_signals[FOO] =
g_signal_new ("foo", G_OBJECT_CLASS_TYPE (object_class),
G_SIGNAL_RUN_LAST,
G_STRUCT_OFFSET (${FULL_OBJECT_NAME}Class, foo),
NULL, NULL, g_cclosure_marshal_VOID__VOID,
G_TYPE_NONE, 0);
${SHORT_OBJECT_NAME}_class->foo = NULL;
}
static void
${METHOD_PREFIX}_class_install_properties (${FULL_OBJECT_NAME}Class *${SHORT_OBJECT_NAME}_class)
{
GObjectClass *object_class;
GParamSpec *param_spec;
object_class = G_OBJECT_CLASS (${SHORT_OBJECT_NAME}_class);
object_class->set_property = ${METHOD_PREFIX}_set_property;
object_class->get_property = ${METHOD_PREFIX}_get_property;
param_spec = g_param_spec_int ("bar", _("Bar"),
_("The amount of bar"),
0, G_MAXINT,
${MACRO_PREFIX}_DEFAULT_BAR,
G_PARAM_READWRITE | G_PARAM_CONSTRUCT);
g_object_class_install_property (object_class, PROP_BAR, param_spec);
}
#endif
static void
${METHOD_PREFIX}_init (${FULL_OBJECT_NAME} *${SHORT_OBJECT_NAME})
{
${SHORT_OBJECT_NAME}->priv = G_TYPE_INSTANCE_GET_PRIVATE (${SHORT_OBJECT_NAME},
${MACRO_NAMESPACE}_TYPE_${MACRO_OBJECT_NAME},
${FULL_OBJECT_NAME}Private);
}
static void
${METHOD_PREFIX}_finalize (GObject *object)
{
${FULL_OBJECT_NAME} *${SHORT_OBJECT_NAME};
GObjectClass *parent_class;
${SHORT_OBJECT_NAME} = ${MACRO_PREFIX} (object);
parent_class = G_OBJECT_CLASS (${METHOD_PREFIX}_parent_class);
if (parent_class->finalize != NULL)
parent_class->finalize (object);
}
#if 0
static void
${METHOD_PREFIX}_set_property (GObject *object,
guint prop_id,
const GValue *value,
GParamSpec *pspec)
{
${FULL_OBJECT_NAME} *${SHORT_OBJECT_NAME} = ${MACRO_PREFIX} (object);
switch (prop_id)
{
case PROP_BAR:
${METHOD_PREFIX}_set_bar (${SHORT_OBJECT_NAME},
g_value_get_int (value));
break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
}
}
static void
${METHOD_PREFIX}_get_property (GObject *object,
guint prop_id,
GValue *value,
GParamSpec *pspec)
{
${FULL_OBJECT_NAME} *${SHORT_OBJECT_NAME} = ${MACRO_PREFIX} (object);
switch (prop_id)
{
case PROP_BAR:
g_value_set_int (value,
${METHOD_PREFIX}_get_bar (${SHORT_OBJECT_NAME}));
break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
}
}
#endif
GQuark
${METHOD_PREFIX}_error_quark (void)
{
static GQuark error_quark = 0;
if (error_quark == 0)
error_quark = g_quark_from_static_string ("${ERROR_QUARK}");
return error_quark;
}
${FULL_OBJECT_NAME} *
${METHOD_PREFIX}_new (void)
{
${FULL_OBJECT_NAME} *${SHORT_OBJECT_NAME};
${SHORT_OBJECT_NAME} = g_object_new (${MACRO_NAMESPACE}_TYPE_${MACRO_OBJECT_NAME}, NULL);
return ${SHORT_OBJECT_NAME};
}
#if 0
void
${METHOD_PREFIX}_set_bar (${FULL_OBJECT_NAME} *${SHORT_OBJECT_NAME},
int bar)
{
if (${SHORT_OBJECT_NAME}->priv->bar != bar)
{
${SHORT_OBJECT_NAME}->priv->bar = bar;
g_object_notify (G_OBJECT (${SHORT_OBJECT_NAME}), "bar");
}
}
int
${METHOD_PREFIX}_get_bar (${FULL_OBJECT_NAME} *${SHORT_OBJECT_NAME})
{
return ${SHORT_OBJECT_NAME}->priv->bar;
}
#endif
#ifdef ${MACRO_PREFIX}_ENABLE_TEST
#include <stdio.h>
#include <glib.h>
int
main (int argc,
char **argv)
{
${FULL_OBJECT_NAME} *${SHORT_OBJECT_NAME};
int exit_code;
g_log_set_always_fatal (G_LOG_LEVEL_ERROR
| G_LOG_LEVEL_CRITICAL
| G_LOG_LEVEL_WARNING);
g_type_init ();
${SHORT_OBJECT_NAME} = ${METHOD_PREFIX}_new ();
g_object_unref (${SHORT_OBJECT_NAME});
exit_code = 0;
return exit_code;
}
#endif /* ${MACRO_PREFIX}_ENABLE_TEST */

uncrustify -c $(dirname $0)/default.cfg ${HEADER_FILENAME}
mv ${HEADER_FILENAME}.uncrustify ${HEADER_FILENAME}
uncrustify -c $(dirname $0)/default.cfg ${SOURCE_FILENAME}
mv ${SOURCE_FILENAME}.uncrustify ${SOURCE_FILENAME}

@ -0,0 +1,20 @@
#!/bin/bash
[ -z "$INITRD" ] && INITRD="/boot/initrd-$(/bin/uname -r).img"
if [ -z "$NEW_INITRD" ]; then
NEW_INITRD="$(/bin/dirname $INITRD)/$(/bin/basename $INITRD .img)-plymouth.img"
fi
TMPDIR="$(mktemp -d $PWD/initrd.XXXXXXXXXX)"
(
cd $TMPDIR
zcat $INITRD | cpio -q -Hnewc -i --make-directories
sed -i -e 's@^#!\(.*\)@#!/bin/plymouth \1@' init
rm -f $NEW_INITRD
find | cpio -q -Hnewc -o | gzip -9 > $NEW_INITRD
[ $? -eq 0 ] && echo "Wrote $NEW_INITRD"
)
rm -rf "$TMPDIR"
Loading…
Cancel
Save