+ ;; your custom is "old custom",
+ ;; or you don't have custom library at compile-time.
+ (or (condition-case nil
+ ;; load-time check.
+ ;; load "custom" if exists.
+ (and (require 'custom)
+ (fboundp 'custom-declare-variable))
+ (error nil))
+ ;; your custom is "old custom",
+ ;; or you don't have custom library.
+ ;; load emulation version of "new custom".
+ (require 'tinycustom)))