X-Git-Url: https://git.saurik.com/cycript.git/blobdiff_plain/8f41509fd52c574f447fe0e40555530de3fda431..88085bb43c2b0053fbb8d6b62b00af71c4b323cf:/Bridge.sh?ds=sidebyside diff --git a/Bridge.sh b/Bridge.sh index c97d942..0bf14ab 100755 --- a/Bridge.sh +++ b/Bridge.sh @@ -1,22 +1,22 @@ #!/usr/bin/env bash # Cycript - Optimizing JavaScript Compiler/Runtime -# Copyright (C) 2009-2013 Jay Freeman (saurik) +# Copyright (C) 2009-2015 Jay Freeman (saurik) -# GNU General Public License, Version 3 {{{ +# GNU Affero General Public License, Version 3 {{{ # -# Cycript 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 3 of the License, -# or (at your option) any later version. +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. # -# Cycript is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of +# 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. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License -# along with Cycript. If not, see . +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . # }}} cat << EOF @@ -24,6 +24,12 @@ cat << EOF #include #include #include "Execute.hpp" + +#if defined(__clang__) +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wunknown-pragmas" +#pragma clang diagnostic ignored "-Wdeprecated-register" +#endif %} %language=ANSI-C @@ -32,18 +38,24 @@ cat << EOF %define slot-name name_ %struct-type -%omit-struct-type %pic +%delimiters="|" + struct CYBridgeEntry { int name_; const char *value_; - void *cache_; }; %% EOF -grep '^[CFV]' "$1" | sed -e 's/^C/0/;s/^F/1/;s/^V/2/' | sed -e 's/"/\\"/g;s/^\([^ ]*\) \([^ ]*\) \(.*\)$/\1\2, "\3", NULL/'; -grep '^[EST]' "$1" | sed -e 's/^S/3/;s/^T/4/;s/^E/5/' | sed -e 's/^5\(.*\)$/4\1 i/;s/"/\\"/g' | sed -e 's/^\([^ ]*\) \([^ ]*\) \(.*\)$/\1\2, "\3", NULL/'; +grep -v '^$' + +cat <