Faits:
A.
Par jugement du 21 juin 2012, le Tribunal de police de l'arrondissement de Lausanne a condamné X._ à une peine pécuniaire de dix jours-amende à 30 francs le jour, avec sursis pendant deux ans, pour avoir séjourné irrégulièrement en Suisse du 1er au 19 décembre 2010 (art. 115 al. 1 let. b de la loi fédérale du 16 décembre 2005 sur les étrangers (ci-après: LEtr; RS 142.20) ). Il a renoncé à révoquer les sursis octroyés les 29 octobre 2009 et 14 septembre 2010 par le Juge d'instruction genevois.
B.
Par jugement du 12 décembre 2012, la Cour d'appel pénale du Tribunal cantonal vaudois a admis l'appel formé par le Ministère public vaudois et réformé le jugement de première instance en ce sens qu'elle a condamné X._ à une peine pécuniaire de 50 jours-amende à 30 francs le jour, avec sursis pendant quatre ans, ainsi qu'à une amende de 600 francs à titre de sanction immédiate pour avoir séjourné illégalement en Suisse du 13 septembre 2010 au 22 juin 2011.
En substance, elle a retenu les faits suivants:
X._ est né le 2 février 1987 au Maroc, pays dont il est ressortissant. A une date indéterminée, il s'est établi en Italie au bénéfice d'un permis de séjour et y a travaillé notamment dans le domaine de l'import-export jusqu'en 2010.
Dans le courant de l'année 2008, X._ a fait la connaissance de Y._, ressortissante suisse. Le couple a vécu entre la Suisse et l'Italie durant de nombreux mois, l'un rendant visite à l'autre régulièrement pour des week-ends prolongés. Au mois de septembre 2010, X._ a rendu visite à Y._, comme il le faisait régulièrement. Il est entré en Suisse au bénéfice de son autorisation de séjour en Italie, qui l'autorisait à quitter le territoire italien pour se rendre dans les pays de l'espace Schengen. Alors qu'il était en Suisse, il s'est vu notifier le 13 septembre 2010 une interdiction d'entrée sur le territoire suisse liée à de précédentes condamnations prononcées par le Juge d'instruction de Genève. Il a dès lors pris la décision de ne pas retourner en Italie. Il a interjeté des recours contre la décision d'interdiction d'entrée en Suisse. Parallèlement, il a entrepris les démarches pour obtenir l'autorisation de se marier. Le mariage a été célébré le 12 décembre 2011. X._ a obtenu un permis B valable pour les cantons de Vaud et de Lucerne en date du 25 janvier 2012 pour le premier et du 13 février 2012 pour le second. L'Office fédéral des migrations a annulé la décision d'interdiction d'entrée en Suisse le 20 janvier 2012.
C.
Contre ce dernier jugement, X._ dépose un recours en matière pénale devant le Tribunal fédéral. Il conclut, principalement, à une exemption de toute peine en application de l'<ref-law> et, subsidiairement, à l'annulation de l'arrêt attaqué et au renvoi de la cause au tribunal de première instance ou à la cour cantonale pour nouveau jugement.
Invités à se déterminer, la cour cantonale a renoncé à formuler des observations et le Ministère public a conclu au rejet du recours. Le recourant a répondu aux déterminations du Ministère public.

Considérant en droit:
1.
La cour cantonale n'a pas examiné la question de l'application de la Directive du Parlement européen et du Conseil du 16 décembre 2008 relative aux normes et procédures communes applicables dans les Etats membres au retour des ressortissants de pays tiers en séjour irrégulier (Directive sur le retour 2008/115/CE), et le recourant n'émet pas de remarque sur ce texte dans son écriture. Toutefois, dans la mesure où celui-ci a un contenu suffisamment précis pour être directement applicable, le Tribunal fédéral examine d'office son application (<ref-law>; BERNARD CORBOZ, in Commentaire de la LTF, 2009, n° 10 ad <ref-law>).
1.1. Le 1er mars 2008 est entré en vigueur l'accord entre la Confédération suisse, l'Union européenne et la Communauté européenne sur l'association de la Confédération suisse à la mise en oeuvre, à l'application et au développement de l'acquis de Schengen, conclu le 26 octobre 2004 (RS 0.362.31; ci-après: AAS). La Suisse s'est engagée à reprendre dans son droit national tous les actes juridiques de l'UE auxquels il est fait référence dans l'accord d'association à Schengen (acquis de Schengen). En outre, elle s'est dit prête à reprendre, en principe, tous les actes juridiques ultérieurs concernant Schengen adoptés après le 26 octobre 2004 par l'UE et à les transposer, si nécessaire, dans le droit suisse (développement de l'acquis de Schengen).
1.2. Le 16 décembre 2008, le Parlement européen et le Conseil de l'Union européenne ont adopté la directive sur le retour, qui vise une harmonisation minimale des procédures d'éloignement et de rapatriement pour les ressortissants de pays non-membres de Schengen (pays tiers) en séjour irrégulier, afin que les personnes concernées soient rapatriées de façon humaine et dans le respect de leurs droits fondamentaux. Par l'arrêté du 18 juin 2010, la Suisse a repris le contenu de cette directive en tant que développement de l'acquis de Schengen (cf. message du 18 novembre 2009 sur l'approbation et la mise en oeuvre de l'échange de notes entre la Suisse et la CE concernant la reprise de la directive CE sur le retour et sur une modification de la LEtr, in: FF 2009 p. 8043; échange de notes, in: FF 2009 p. 8085; arrêté fédéral portant approbation et mise en oeuvre de l'échange de notes entre la Suisse et la CE concernant la reprise de la directive CE sur le retour, in FF 2009 p. 8077). La mise en oeuvre de cette directive a requis une adaptation de la loi fédérale du 16 décembre 2005 sur les étrangers (LEtr) et de la loi du 26 juin 1998 sur l'asile (LAsi); l'art. 115 LEtr n'a toutefois pas été modifié.
1.3. La cour de justice de l'Union européenne a été amenée à se prononcer sur la conformité, avec la directive sur le retour, de législations nationales prévoyant des sanctions au seul motif de l'irrégularité de l'entrée ou du séjour d'un ressortissant d'un pays tiers Elle a conclu qu'une peine d'emprisonnement pour séjour illégal ne pouvait être infligée à un ressortissant étranger que si la procédure administrative de renvoi avait été menée à son terme sans succès et que le ressortissant étranger demeurait sur le territoire sans motif justifié de non-retour (arrêt du 28 avril 2011 C-61/11 PPU El Dridi, ch. 63; arrêt du 6 décembre 2011 C-329/11 Achughbabian ch. 50; arrêt du 6 décembre 2012 C 430/11 Sagor).
1.4. La reprise de la jurisprudence européenne est réglée aux art. 8 et 9 AAS. Il ressort de ces dispositions que la Suisse doit faire son possible pour assurer une application et une interprétation aussi uniformes que possible des règles instaurées par Schengen. Si elle ne tient pas compte de la jurisprudence de la CJUE en relation avec la directive sur le retour et qu'aucune solution n'est trouvée au sein du comité mixte (composé des représentants du gouvernement suisse, des membres du Conseil de l'Union européenne et de la Commission des Communautés européennes, cf. art. 3 AAS), la participation suisse à Schengen risque d'être menacée (cf. THOMAS HUGI YAR, Das Urteil El Dridi, die EU-Rückführungsrichtlinie und der Schengen-Besitzstand, in jusletter du 11 juillet 2011, n° 13 in fine; CESLA MARELLE, La jurisprudence du Tribunal fédéral en droit des étrangers et de la nationalité, in Annuaire du droit de la migration 2010/2011, 2011, p. 145 ss, spéc., p. 148; SARAH PROGIN-THEUERKAUF, Zur Auslegung der Begriffe " Massnahmen " une " Zwangsmassnahmen " in Art. 8 Abs. 1 und 4 der Eu-Rückführungsrichtlinie, in Revue Suisse pour la pratique et le droit d'asile, Asyl 2/12 p. 36 ss). La doctrine suisse propose ainsi d'interpréter l'art. 115 LEtr conformément à la jurisprudence européenne et de faire précéder la procédure pénale par la procédure de retour avec toutes ses étapes; le principe de l'opportunité posé à l'art. 115 al. 4 LEtr se transforme ainsi en un véritable obstacle à la poursuite pénale ( THOMAS HUGI YAR, op. cit., note 16; ANDREAS ZÜND, in Migrationsrecht, 3e éd. 2012, n° 12 ad art. 115; n° 10 ad art. 81; SARAH PROGIN-THEUERKAUF, OP. CIT., p. 36 ss). Selon le Tribunal fédéral, la directive sur le retour n'exclut pas l'application des dispositions pénales nationales lorsque les autorités administratives ont entrepris toutes les mesures raisonnables pour l'exécution de la décision de retour mais que la procédure de retour a échoué en raison du comportement de l'intéressé (arrêts 6B_196/2012 du 24 janvier 2013 consid. 2.1.3 et 2.2; 6B_188/2012 du 17 avril 2012, 6B_617/2008 du 11 mars 2013 et 6B_618/2012 du 11 mars 2013).
1.5. Dans le cas d'espèce, le recourant a obtenu un permis B valable pour les cantons de Vaud et de Lucerne en janvier 2012 et février 2012. Ce n'est qu'ultérieurement qu'il a été condamné pour séjour illégal par rapport à une période antérieure. Le premier juge a rendu son jugement le 21 juin 2012 et le juge d'appel le 12 décembre 2012. La peine infligée au recourant (qu'il s'agisse d'une peine privative de liberté ou d'une peine pécuniaire et qu'elle soit assortie ou non du sursis) ne saurait entraver, dans ces conditions, une procédure de renvoi, puisque le recourant résidait alors légalement en Suisse et qu'une procédure de renvoi n'entrait plus en considération. La condamnation pénale du recourant n'est donc pas, en l'espèce, incompatible avec la directive sur le retour et la jurisprudence européenne y relative.
2.
Le recourant conteste la durée de son séjour illégal (art. 115 LEtr). Il invoque une violation de l'art. 67 LEtr.
Pour la cour cantonale, le recourant a résidé illégalement dans notre pays entre le 13 septembre 2010 (date de la notification de l'interdiction d'entrée en Suisse) et le 22 juin 2011 (date de son interpellation par la police et de son incrimination dans l'acte d'accusation du 10 août 2011). La cour cantonale a admis que, dès la notification le 13 septembre 2010 d'une interdiction d'entrée en Suisse, le recourant n'était pas autorisé à rester en Suisse et que son séjour était devenu illégal.
Pour le recourant, son séjour illégal a duré du 1er décembre au 20 décembre 2010 (date du dépôt de la demande d'ouverture d'un dossier de mariage). Il expose qu'entré légalement en Suisse le 1er septembre 2010, il était autorisé à y rester pendant trois mois, à savoir jusqu'au 30 novembre 2010.
2.1. L'art. 115 al. 1 LEtr punit quiconque contrevient aux dispositions sur l'entrée en Suisse (art. 5 LEtr) (let. a) ou séjourne illégalement en Suisse, notamment après l'expiration de la durée du séjour non soumis à autorisation ou du séjour autorisé (let. b). En cas d'exécution immédiate du renvoi ou de l'expulsion, le juge peut renoncer à poursuivre l'étranger sorti ou entré illégalement, à le renvoyer devant le tribunal ou à lui infliger une peine (art. 115 al. 4 LEtr).
2.2. L'étranger qui entre en Suisse sans papier de légitimation, sans être muni d'un visa si celui-ci est requis (art. 5 al. 1 let. a LEtr), ou avec des papiers falsifiés ou encore malgré une mesure d'éloignement prononcée contre lui (art. 5 al. 1 let. d LEtr) est punissable pour entrée illégale en Suisseen application de l'art. 115 al. 1 let. a LEtr (Zünd, op. cit., n° 2 ad art. 115 LEtr). Les ressortissants d'un pays tiers de l'Union européenne peuvent entrer en Suisse pour un séjour n'excédant pas trois mois avec un visa-Schengen; ils sont toutefois libérés de cette obligation s'ils sont titulaires d'un titre de séjour en cours de validité délivré par un Etat membre de Schengen (art. 2 de l'ordonnance sur l'entrée et l'octroi de visas; RS 142.204; OEV; art. 5 al. 1 let. b du règlement (CE) n° 562/2006 du Parlement européen et du Conseil du 15 mars 2006 établissant un code communautaire relatif au régime de franchissement des frontières par les personnes [code frontières Schengen]).
La cour cantonale a admis que le recourant était entré légalement en Suisse le 1er septembre 2010 au bénéfice de son permis de séjour italien et qu'il ne s'était pas rendu coupable de l'infraction définie à l'art. 115 al. 1 let. a LEtr (entrée illégale). L'Office fédéral des migrations avait certes rendu à l'encontre du recourant une décision d'interdiction d'entrée en Suisse. Il a toutefois été retenu que le recourant n'en avait pas eu connaissance lors de son entrée en Suisse, mais seulement le 13 septembre 2010.
2.3. Le recourant a été condamné pour séjour illégal en Suisse en application de l'art. 115 al. 1 let. b LEtr à compter du 13 septembre 2010 (date de la notification de l'interdiction d'entrée en Suisse). Le recourant soutient que le séjour n'est devenu illégal qu'après l'expiration de la durée du séjour non soumis à autorisation.
L'interdiction d'entrée au sens du droit des étrangers (art. 67 LEtr) vise à empêcher l'entrée ou le retour en Suisse d'un étranger dont le séjour en Suisse est indésirable. Elle ne peut pas se substituer à une mesure d'éloignement (directives de l'office fédéral des migrations concernant les mesures d'éloignement, état au 30 septembre 2011, chiffre 8.9). Les effets d'une interdiction d'entrée en Suisse ne se déploient qu'à partir du moment où l'étranger se trouve en dehors du territoire suisse (<ref-ruling> qui demeure applicable à la nouvelle loi sur les étrangers; Minh Son Nguyen, Droit public des étrangers, Berne 2003, p. 610 à propos de l'ancien droit).
En l'espèce, la décision d'interdiction d'entrée, notifiée le 13 septembre 2010, n'a créé aucune obligation à la charge du recourant de quitter la Suisse, mais l'empêchait seulement de revenir en Suisse une fois qu'il aurait quitté le territoire suisse. Contrairement à ce que soutient la cour cantonale, la décision d'interdiction d'entrée n'a donc pas rendu le séjour du recourant illégal. Pour le surplus, l'arrêt cantonal ne retient pas que, parallèlement à cette décision, le recourant aurait fait l'objet d'une mesure d'éloignement (renvoi ou expulsion). En retenant que le recourant séjournait irrégulièrement dans notre pays depuis le 13 septembre 2010, la cour cantonale a donc violé le droit fédéral. Entré légalement en Suisse le 1er septembre 2010, le recourant était autorisé à y séjourner pendant trois mois, à savoir jusqu'au 30 novembre 2010.
2.4. Le recourant soutient qu'il était autorisé à séjourner en Suisse dès le dépôt d'une demande d'autorisation de séjour temporaire en vue du mariage. Il invoque le droit au mariage tel que consacré par l'art. 14 Cst., l'art. 12 CEDH et l'art. 23 al. 2 du Pacte international relatif aux droits civils et politiques du 16 décembre 1966.
Selon la jurisprudence, un étranger peut, à certaines conditions, déduire du droit au mariage garanti par l'art. 12 CEDH et l'art. 14 Cst. un droit à pouvoir séjourner en Suisse en vue de s'y marier. Ainsi, les autorités de police des étrangers sont tenues de délivrer un titre de séjour en vue du mariage lorsqu'il n'y a pas d'indice que l'étranger entende, par cet acte, invoquer abusivement les règles sur le regroupement familial, et qu'il apparaît clairement que l'intéressé remplira les conditions d'une admission en Suisse après son union (cf. art. 17 al. 2 LEtr par analogie; <ref-ruling> consid. 3.7 p. 359 s.; <ref-ruling> consid. 4 p. 46 s.). Le droit au mariage garanti par l'art. 12 CEDH peut également être invoqué par des étrangers résidant illégalement dans un Etat membre (ATF <ref-ruling> consid. 3 p. 45 et consid. 4 p. 46; <ref-ruling> consid. 3.6 p. 359 et consid. 3.8 p. 361).
L'étranger entré légalement en Suisse pour un séjour temporaire qui dépose ultérieurement une demande d'autorisation de séjour durable doit attendre la décision à l'étranger (art. 17 al. 1 LEtr). Cela vaut aussi pour l'étranger résidant illégalement en Suisse qui tente de légaliser son séjour par le dépôt ultérieur d'une demande d'autorisation de séjour durable (<ref-ruling> consid. 2.1 p. 40). Selon le message du Conseil fédéral, le requérant ne peut pas se prévaloir, déjà durant la procédure, du droit de séjour qu'il sollicite ultérieurement, à moins qu'il remplisse " très vraisemblablement " les conditions d'admission (FF 2002 3469 ss, p. 3535). Le seul dépôt d'une demande d'autorisation de séjour durable ne rend pas le séjour légal, puisque l'étranger doit en principe attendre la décision à l'étranger ( Zünd, op. cit., n° 7 ad art. 115 LEtr).
L'autorité cantonale compétente peut - ou même doit - autoriser, dans le cadre de son pouvoir d'appréciation (art. 96 LEtr), l'étranger à séjourner en Suisse durant la procédure si les conditions d'un droit légal, constitutionnel ou conventionnel à l'octroi d'une autorisation sont données avec une grande vraisemblance (art. 17 al. 2 LEtr; " prozeduraler Aufenthalt "). Elle doit rendre sa décision lors d'un examen sommaire des chances de succès, comme c'est le cas lors du prononcé de mesures provisoires (<ref-ruling> consid. 2.2). Ni l'entrée illicite ni le séjour illicite n'empêche l'application de l'art. 17 al. 2 LEtr (<ref-ruling> consid. 3.6 p. 359 et consid. 3.8 p. 361; Marc Spescha, in Migrationsrecht, Kommentar, 3e éd., 2012, n° 2 ad art. 17 LEtr).
En l'espèce, le jugement attaqué retient que le recourant " a fait des démarches pour obtenir l'autorisation de se marier ". Il ne donne aucune information sur celles-ci. Ignorant tout de la procédure administrative relative à l'octroi du permis de séjour, la cour de céans ne saurait se prononcer sur la durée du séjour irrégulier du recourant. Lorsqu'un état de fait est lacunaire et qu'ainsi l'application de la loi ne peut pas être contrôlée, la décision attaquée doit être annulée et la cause renvoyée à l'autorité précédente afin que l'état de fait soit complété et qu'un nouveau jugement soit prononcé (<ref-ruling> consid. 3.4 p. 294 ss). Conformément à cette jurisprudence, il convient dès lors d'annuler le jugement attaqué et de renvoyer la cause à la cour cantonale pour qu'elle rende un nouveau jugement. En particulier, elle devra déterminer si le recourant a obtenu un droit de séjour durant la procédure tendant à l'octroi d'une autorisation de séjour temporaire en vue de la préparation d'un mariage (art. 17 al. 2 LEtr).
3.
Le recourant dénonce une violation des art. 43 et 52 CP. Il soutient en particulier qu'il devrait être exempté de toute peine, dans la mesure où il n'aurait résidé irrégulièrement en Suisse que du 1er au 20 décembre 2010 et que sa culpabilité et les conséquences de son infraction seraient dès lors de peu d'importance.
Il n'y a pas lieu d'examiner ces griefs, puisqu'il incombera à la cour cantonale de revoir la question du séjour illégal et, le cas échéant, en cas de séjour illicite, de fixer la peine, respectivement de se prononcer sur l'exemption de celle-ci.
4.
En conclusion, le recours doit être admis, l'arrêt attaqué annulé et la cause renvoyée à l'autorité cantonale pour nouvelle décision.
Le recourant qui obtient gain de cause ne supporte pas de frais judiciaires (<ref-law>) et peut prétendre à une indemnité de dépens à la charge du canton de Vaud (art. 68 al. 1 et 2 LTF).

Par ces motifs, le Tribunal fédéral prononce:
1.
Le recours est admis, le jugement attaqué est annulé et la cause est renvoyée à la cour cantonale pour nouveau jugement.
2.
Il n'est pas perçu de frais judiciaires.
3.
Le canton de Vaud versera au recourant la somme de 3'000 fr. à titre de dépens.
4.
Le présent arrêt est communiqué aux parties et à la Cour d'appel pénale du Tribunal cantonal du canton de Vaud.
Lausanne, le 19 août 2013
Au nom de la Cour de droit pénal
du Tribunal fédéral suisse
Le Président: Mathys
La Greffière: Kistler Vianin