patch 8.1.1608: the evalfunc.c file is too big

Problem:    The evalfunc.c file is too big.
Solution:   Move sign functionality to sign.c.
diff --git a/src/proto/sign.pro b/src/proto/sign.pro
index d087c01..2e6f3a0 100644
--- a/src/proto/sign.pro
+++ b/src/proto/sign.pro
@@ -10,13 +10,8 @@
 void sign_mark_adjust(linenr_T line1, linenr_T line2, long amount, long amount_after);
 int sign_define_by_name(char_u *name, char_u *icon, char_u *linehl, char_u *text, char_u *texthl);
 int sign_undefine_by_name(char_u *name);
-int sign_place(int *sign_id, char_u *sign_group, char_u *sign_name, buf_T *buf, linenr_T lnum, int prio);
-int sign_unplace(int sign_id, char_u *sign_group, buf_T *buf, linenr_T atlnum);
-linenr_T sign_jump(int sign_id, char_u *sign_group, buf_T *buf);
 void ex_sign(exarg_T *eap);
-void sign_getlist(char_u *name, list_T *retlist);
 void get_buffer_signs(buf_T *buf, list_T *l);
-void sign_get_placed(buf_T *buf, linenr_T lnum, int sign_id, char_u *sign_group, list_T *retlist);
 void sign_gui_started(void);
 int sign_get_attr(int typenr, int line);
 char_u *sign_get_text(int typenr);
@@ -24,4 +19,11 @@
 void free_signs(void);
 char_u *get_sign_name(expand_T *xp, int idx);
 void set_context_in_sign_cmd(expand_T *xp, char_u *arg);
+void f_sign_define(typval_T *argvars, typval_T *rettv);
+void f_sign_getdefined(typval_T *argvars, typval_T *rettv);
+void f_sign_getplaced(typval_T *argvars, typval_T *rettv);
+void f_sign_jump(typval_T *argvars, typval_T *rettv);
+void f_sign_place(typval_T *argvars, typval_T *rettv);
+void f_sign_undefine(typval_T *argvars, typval_T *rettv);
+void f_sign_unplace(typval_T *argvars, typval_T *rettv);
 /* vim: set ft=c : */