Sachverhalt:
Sachverhalt:
A. Die D._ AG lieferte und montierte im Spätsommer/Herbst 1992 an einem Neubauprojekt an der E._strasse in Zürich die Fenster für einen Betrag von insgesamt Fr. 107'439.--. Sie erhielt dafür eine Anzahlung von Fr. 54'000.--. Die unbezahlt gebliebene Restforderung von Fr. 53'439.-- trat sie am 17. Mai 1999 an die B._ AG, Zug (Klägerin), ab.
A. Die D._ AG lieferte und montierte im Spätsommer/Herbst 1992 an einem Neubauprojekt an der E._strasse in Zürich die Fenster für einen Betrag von insgesamt Fr. 107'439.--. Sie erhielt dafür eine Anzahlung von Fr. 54'000.--. Die unbezahlt gebliebene Restforderung von Fr. 53'439.-- trat sie am 17. Mai 1999 an die B._ AG, Zug (Klägerin), ab.
B. Die Klägerin machte den Zahlungsausstand am 3. April 2000 beim Kantonsgericht Glarus gegen die A._ AG (Beklagte), geltend. Die Beklagte verkündete in der Klageantwort der C._ AG (Litisdenunziatin), den Streit. Diese schloss sich anlässlich der Hauptverhandlung vom 20. Februar 2001 der Klägerin als Nebenintervenientin an. Das Kantonsgericht bejahte mit Urteil vom 21. August 2001 insbesondere die Passivlegitimation der Beklagten, die von dieser bestritten worden war, und hiess die Klage im Umfang von Fr. 53'439.-- nebst 6% Zins seit 14. April 1994 und Zahlungsbefehlskosten gut. Eine dagegen erhobene kantonalrechtliche Berufung der Beklagten wies das Obergericht des Kantons Glarus am 18. März 2004 ab und bestätigte das Urteil des Kantonsgerichts vollumfänglich.
B. Die Klägerin machte den Zahlungsausstand am 3. April 2000 beim Kantonsgericht Glarus gegen die A._ AG (Beklagte), geltend. Die Beklagte verkündete in der Klageantwort der C._ AG (Litisdenunziatin), den Streit. Diese schloss sich anlässlich der Hauptverhandlung vom 20. Februar 2001 der Klägerin als Nebenintervenientin an. Das Kantonsgericht bejahte mit Urteil vom 21. August 2001 insbesondere die Passivlegitimation der Beklagten, die von dieser bestritten worden war, und hiess die Klage im Umfang von Fr. 53'439.-- nebst 6% Zins seit 14. April 1994 und Zahlungsbefehlskosten gut. Eine dagegen erhobene kantonalrechtliche Berufung der Beklagten wies das Obergericht des Kantons Glarus am 18. März 2004 ab und bestätigte das Urteil des Kantonsgerichts vollumfänglich.
C. Die Beklagte beantragt mit eidgenössischer Berufung, das Urteil des Obergerichts vom 18. März 2004 aufzuheben und die Klage abzuweisen. Eventuell sei die Angelegenheit zur Feststellung und Ergänzung des rechtserheblichen Sachverhalts an das Obergericht zurückzuweisen.
Die Klägerin schliesst auf Abweisung der Berufung. Die Litisdenunziatin hat sich innert Frist nicht vernehmen lassen.

Das Bundesgericht zieht in Erwägung:
Das Bundesgericht zieht in Erwägung:
1. Die Beklagte hält dafür, die Sache sei an die Vorinstanz zurückzuweisen, weil das angefochtene Urteil den Anforderungen von Art. 55 Abs. 1 lit. d OG (recte wohl Art. 51 Abs. 1 lit. c OG) nicht genüge. So nenne es keine Bestimmung des eidgenössischen Zivilrechts, auf die sich die Annahme, die Beklagte sei als Bauherrin bzw. Generalunternehmerin beim Neubau an der E._strasse in Zürich beteiligt und daher bezüglich der eingeklagten Forderung passivlegitimiert, abzustützen vermöchte.
Nach Art. 51 Abs. 1 lit. c OG ist in den kantonalen Entscheiden anzugeben, inwieweit die Entscheidung auf der Anwendung eidgenössischer, kantonaler oder ausländischer Gesetzesbestimmungen beruht. Diese Vorschrift soll dem Bundesgericht die Prüfung der Frage erleichtern, inwieweit auf eine Berufung, auf die hin nur die Anwendung von Bundesrecht zu prüfen ist, eingetreten werden kann und festzustellen, ob die rechtlichen Schlussfolgerungen aus den festgestellten Tatsachen dem eidgenössischen Recht entsprechen (Poudret, Commentaire de la loi fédérale d'organisation judiciaire, Bern 1990, N. 4 zu Art. 51 OG S. 367 ; Birchmeier, Bundesrechtspflege, Zürich 1950, S. 185; vgl. auch BGE 59 II 397 E. 1). Im vorliegenden Fall steht ausser Frage und geht aus dem angefochtenen Urteil hinreichend klar hervor, dass die Vorinstanz die Beklagte in Anwendung von eidgenössischem Recht, und zwar von <ref-law>, zur Bezahlung der Werklohnforderung der Klägerin verpflichtet hat. Soweit die Vorinstanz im Hinblick auf die Beurteilung der Passivlegitimation der Beklagten in Würdigung von Beweisen tatsächliche Feststellungen traf, steht ein Vorgang in Frage, der von vornherein nicht bundesrechtlich geregelt ist (vgl. <ref-ruling> E. 2a S. 291). Eine Rückweisung an die Vorinstanz ist nicht erforderlich.
Nach Art. 51 Abs. 1 lit. c OG ist in den kantonalen Entscheiden anzugeben, inwieweit die Entscheidung auf der Anwendung eidgenössischer, kantonaler oder ausländischer Gesetzesbestimmungen beruht. Diese Vorschrift soll dem Bundesgericht die Prüfung der Frage erleichtern, inwieweit auf eine Berufung, auf die hin nur die Anwendung von Bundesrecht zu prüfen ist, eingetreten werden kann und festzustellen, ob die rechtlichen Schlussfolgerungen aus den festgestellten Tatsachen dem eidgenössischen Recht entsprechen (Poudret, Commentaire de la loi fédérale d'organisation judiciaire, Bern 1990, N. 4 zu Art. 51 OG S. 367 ; Birchmeier, Bundesrechtspflege, Zürich 1950, S. 185; vgl. auch BGE 59 II 397 E. 1). Im vorliegenden Fall steht ausser Frage und geht aus dem angefochtenen Urteil hinreichend klar hervor, dass die Vorinstanz die Beklagte in Anwendung von eidgenössischem Recht, und zwar von <ref-law>, zur Bezahlung der Werklohnforderung der Klägerin verpflichtet hat. Soweit die Vorinstanz im Hinblick auf die Beurteilung der Passivlegitimation der Beklagten in Würdigung von Beweisen tatsächliche Feststellungen traf, steht ein Vorgang in Frage, der von vornherein nicht bundesrechtlich geregelt ist (vgl. <ref-ruling> E. 2a S. 291). Eine Rückweisung an die Vorinstanz ist nicht erforderlich.
2. Die Beklagte macht weiter geltend, das angefochtene Urteil genüge den Anforderungen von Art. 51 Abs. 1 lit. b Abs. 1 OG nicht, liege doch kein genaues Sitzungsprotokoll vor und enthalte das Urteil keine Wiedergabe der Plädoyers vom 7. März 2003, sondern einen blossen Hinweis auf das Handprotokoll des Gerichtsschreibers.
Wird in der Berufung ein Vorgehen nach Art. 51 f. OG beantragt, so muss dargetan werden, dass der beanstandete Mangel den Sachentscheid beeinflusst hat (<ref-ruling> E. 1c S. 480 mit Hinweisen). Die Beklagte schweigt sich jedoch dazu aus. Sie behauptet namentlich nicht, die Vorinstanz habe wesentliche Parteivorbringen, die anlässlich der mündlichen Verhandlung vorgebracht worden seien, nicht in einem Protokoll festgehalten und in der Folge nicht berücksichtigt. Auf die Rüge ist daher nicht weiter einzugehen (vgl. Art. 55 Abs. 1 lit. c OG; Messmer/Imboden, Die eidgenössischen Rechtsmittel in Zivilsachen, Zürich 1992, S. 154 Anm. 25 und S. 168 f.).
Wird in der Berufung ein Vorgehen nach Art. 51 f. OG beantragt, so muss dargetan werden, dass der beanstandete Mangel den Sachentscheid beeinflusst hat (<ref-ruling> E. 1c S. 480 mit Hinweisen). Die Beklagte schweigt sich jedoch dazu aus. Sie behauptet namentlich nicht, die Vorinstanz habe wesentliche Parteivorbringen, die anlässlich der mündlichen Verhandlung vorgebracht worden seien, nicht in einem Protokoll festgehalten und in der Folge nicht berücksichtigt. Auf die Rüge ist daher nicht weiter einzugehen (vgl. Art. 55 Abs. 1 lit. c OG; Messmer/Imboden, Die eidgenössischen Rechtsmittel in Zivilsachen, Zürich 1992, S. 154 Anm. 25 und S. 168 f.).
3. In der Berufungsschrift ist kurz darzulegen, welche Bundesrechtssätze der angefochtene Entscheid verletzt und inwiefern er gegen sie verstösst (Art. 55 Abs. 1 lit. c OG). Dabei ist zu beachten, dass das Bundesgericht seiner Entscheidung im Berufungsverfahren die Feststellungen der letzten kantonalen Instanz über die tatsächlichen Verhältnisse zugrunde zu legen hat, es wäre denn, sie beruhten auf einem offensichtlichen Versehen, seien unter Verletzung bundesrechtlicher Beweisvorschriften zustande gekommen oder bedürften der Ergänzung, weil das kantonale Gericht in fehlerhafter Rechtsanwendung einen gesetzlichen Tatbestand nicht oder nicht hinreichend klärte, obgleich ihm entscheidwesentliche Behauptungen und Beweisanträge rechtzeitig und in der vorgeschriebenen Form unterbreitet worden sind (Art. 63 und 64 OG; <ref-ruling> E. 2.2; <ref-ruling> E. 2c; <ref-ruling> E. 1e S. 205, 368 E. 3 S. 372; <ref-ruling> E. 2; <ref-ruling> E. 2a). Blosse Kritik an der Beweiswürdigung des Sachrichters kann mit der Berufung nicht vorgebracht werden (Art. 55 Abs. 1 lit. c OG; <ref-ruling> E. 6a S. 81; <ref-ruling> E. 2a, 189 E. 2a; <ref-ruling> E. 3).
3. In der Berufungsschrift ist kurz darzulegen, welche Bundesrechtssätze der angefochtene Entscheid verletzt und inwiefern er gegen sie verstösst (Art. 55 Abs. 1 lit. c OG). Dabei ist zu beachten, dass das Bundesgericht seiner Entscheidung im Berufungsverfahren die Feststellungen der letzten kantonalen Instanz über die tatsächlichen Verhältnisse zugrunde zu legen hat, es wäre denn, sie beruhten auf einem offensichtlichen Versehen, seien unter Verletzung bundesrechtlicher Beweisvorschriften zustande gekommen oder bedürften der Ergänzung, weil das kantonale Gericht in fehlerhafter Rechtsanwendung einen gesetzlichen Tatbestand nicht oder nicht hinreichend klärte, obgleich ihm entscheidwesentliche Behauptungen und Beweisanträge rechtzeitig und in der vorgeschriebenen Form unterbreitet worden sind (Art. 63 und 64 OG; <ref-ruling> E. 2.2; <ref-ruling> E. 2c; <ref-ruling> E. 1e S. 205, 368 E. 3 S. 372; <ref-ruling> E. 2; <ref-ruling> E. 2a). Blosse Kritik an der Beweiswürdigung des Sachrichters kann mit der Berufung nicht vorgebracht werden (Art. 55 Abs. 1 lit. c OG; <ref-ruling> E. 6a S. 81; <ref-ruling> E. 2a, 189 E. 2a; <ref-ruling> E. 3).
4. Im kantonalen Verfahren war in erster Linie strittig, ob die Beklagte im Rahmen des Bauprojekts E._strasse als Generalunternehmerin und Bestellerin im Sinne von Art. 363 und Art. 372 Abs. 1 OR der von der D._ AG gelieferten und montierten Fenster auftrat und daher zur Bezahlung des Werklohnes an die Klägerin als Zessionarin der Werklohnforderung verpflichtet ist, ihr also hinsichtlich der entsprechenden Forderung die Passivlegitimation zukommt. Die Beklagte rügt, das angefochtene Urteil, mit dem die Vorinstanz ihre Passivlegitimation bejaht habe, beruhe in verschiedener Hinsicht auf offensichtlichen Versehen und überdies auf einer Verletzung ihres Beweisführungsanspruchs nach <ref-law>.
4.1 Ein offensichtliches Versehen liegt nach der Rechtsprechung nur vor, wenn die Vorinstanz eine bestimmte Aktenstelle übersehen oder unrichtig, d.h. nicht in ihrer wahren Gestalt, insbesondere nicht mit ihrem wirklichen Wortlaut wahrgenommen hat (<ref-ruling> E. 2; <ref-ruling> E. 4b; <ref-ruling> E. 3b). Es ist, wie aus dem Begriff des Versehens folgt, die in Wirklichkeit - nämlich ohne das Versehen - nicht gewollte Feststellung. Nicht in ihrer wahren Gestalt wird eine Aktenstelle beispielsweise wahrgenommen, wenn die Vorinstanz sich verliest, ihrerseits eine Missschreibung in den Akten übersieht oder den offensichtlichen Zusammenhang einer Aussage mit andern Dokumenten oder Äusserungen verkennt (<ref-ruling> E. 2 mit Hinweis). Ein Versehen ist nicht schon dadurch belegt, dass sich das Aktenstück bei der Beweiswürdigung nicht erwähnt findet, sondern es muss klar sein, dass es bei der Bildung der richterlichen Überzeugung auch implizit nicht einbezogen, also in den Akten unentdeckt geblieben oder vergessen worden ist. Erforderlich ist weiter, dass ein solches Versehen den Entscheid beeinflusst (<ref-ruling> E. 1 S. 222; Poudret, a.a.O., N. 1.6.3. zu Art. 55 OG S. 445, N. 5.1 zu Art. 63 OG). Das Bundesgericht muss in der Lage sein, die irrtümliche Sachverhaltsfeststellung aufgrund des Aktenstückes sogleich zu berichtigen, ohne die Sache nach Art. 64 OG zur Ergänzung des Sachverhalts an die kantonale Instanz zurückweisen zu müssen (Poudret, a.a.O., N.1.6.3 zu Art. 55 OG S. 445). Betrifft das Versehen nur einen Ausschnitt der Beweiswürdigung, z.B. ein einzelnes Indiz einer Indizienkette oder eine von mehreren Zeugenaussagen, so hilft die Versehensrüge nicht weiter; diesfalls läuft die Rüge vielmehr auf eine unzulässige Kritik an der Beweiswürdigung hinaus und ist von vornherein nicht zu hören (Messmer/Imboden, Die eidgenössischen Rechtsmittel in Zivilsachen, Zürich 1992, S. 138; Poudret, a.a.O., N 1.6.3 zu Art. 55 OG S. 445). Die Rüge, die Beweiswürdigung sei offensichtlich unhaltbar und damit willkürlich, namentlich weil sie mit der tatsächlichen Situation in klarem Widerspruch stehe, kann einzig im Verfahren der staatsrechtlichen Beschwerde vorgebracht werden (vgl. <ref-ruling> E. 2a S. 291; zum Willkürbegriff vgl. <ref-ruling> E. 2.1,173 E.3.1, je mit Hinweisen).
4.2 Die Vorinstanz ging bei der Beurteilung der Passivlegitimation von der Feststellung aus, dass über die Fensterlieferung offensichtlich kein schriftlicher Werkvertrag bestehe. Die Beklagte macht geltend, diese Feststellung, beruhe auf einem offensichtlichen Versehen. So liege für die Fenster eine Rechnung der D._ AG bei den Akten, in der eine "Ausführung nach Vertrag" erwähnt werde. Darunter könne nach dem allgemeinen Sprachgebrauch sowie in Anbetracht der erforderlichen technischen Spezifizierungen nur gerade ein schriftlicher Vertrag verstanden werden, abgesehen davon, dass schriftliche Werkverträge bei Aufträgen dieser Art und im Umfang von über Fr. 100'000.-- ohnehin üblich seien.
Die Beklagte behauptet damit nicht, aus der Fensterrechnung liesse sich eine direkte Aussage über das Vorliegen eines schriftlichen Vertrages entnehmen. Ihre Vorbringen, mit denen sie geltend macht, die Vorinstanz hätte aufgrund der Fensterrechnung auf das Vorliegen eines schriftlichen Vertrages schliessen müssen, laufen vielmehr auf eine unzulässige Kritik an der Beweiswürdigung der Vorinstanz hinaus, die in einem Editionsverfahren geschlossen hat, es bestehe kein schriftlicher Werkvertrag über die Lieferung und Montage der Fenster. Dass die Vorinstanz die fragliche Rechnung in den Akten schlicht übersehen habe, als sie die beanstandete Feststellung traf, macht die Beklagte darüber hinaus nicht geltend. Es sind denn auch keine klaren Anhaltspunkte ersichtlich, die für eine entsprechende Annahme sprechen würden (vgl. vorstehende Erwägung 4.1). Es kann somit nicht davon die Rede sein, dass die vorinstanzliche Feststellung, es bestehe kein schriftlicher Werkvertrag, auf einem offensichtlichen Versehen beruhe.
4.3 Die Vorinstanz leitete die tatsächliche Stellung der Beklagten als Generalunternehmerin und damit als Schuldnerin unter anderem aus einem Architektenvertrag vom 11. Februar 1991 betreffend den Neubau an der E._strasse in Zürich ab. Sie hielt fest, dieser Vertrag, mit dem die Litisdenunziatin den Architekturauftrag erhalten habe, sei von der Beklagten als Auftraggeberin mitunterzeichnet worden. Auch wenn der für die Beklagte unterzeichnende F._, wie die Beklagte behaupte, nicht für sie zeichnungsberechtigt gewesen wäre, sei dessen Handeln von der Beklagten auf jeden Fall nachträglich genehmigt worden, indem sie eine vom Architekten erstellte Kostenabrechnung genehmigt habe, und müsse sie sich das Handeln entgegenhalten lassen. Darüber hinaus berücksichtigte die Vorinstanz verschiedene weitere Aktenstücke als Indizien dafür, dass die Beklagte Bestellerin der Fenster war, insbesondere ein Schreiben von G._ vom 8. Juli 1999 an das Vermittleramt Glarus, die Vorbringen des Rechtsvertreters der Beklagten in einem Verfahren vor Handelsgericht Zürich über deren Eigenschaft als Generalunternehmerin beim streitbetroffenen Neubau und die Einwilligung der Beklagten in einen Vergleich betreffend das Architektenhonorar vor Handelsgericht Zürich. Es kann dazu auf die einlässlichen Erwägungen im angefochtenen Urteil verwiesen werden. Die Vorinstanz hielt es aufgrund dieser Beweismittel für erstellt, dass die Beklagte beim Bauprojekt E._strasse als Generalunternehmerin wirkte und als solche Bestellerin der Handwerksleistungen der D._ AG war. Damit hat sie eine tatsächliche Feststellung getroffen, die auf Beweiswürdigung beruht und an die das Bundesgericht im Berufungsverfahren grundsätzlich gebunden ist (vgl. dazu die vorstehende Erwägung 3; <ref-ruling> E. 4; Poudret, a.a.O., N. 4.2.1.4 zu Art. 63 OG).
Die Beklagte macht insbesondere geltend, die Vorinstanz habe dabei übersehen, dass die D._ AG in ihrer Fensterrechnung selber angegeben habe, gegenüber wem ihr die Forderung zustehen solle, nämlich gegenüber der H._-Genossenschaft, nicht aber gegenüber der Beklagten. Ferner sei ihr entgangen, dass F._, der den in Frage stehenden Architektenvertrag für die Liberale Wohnbauförderungs-Genossenschaft und die Beklagte gleichzeitig als Auftraggeber unterzeichnete, für die Beklagte nie zeichnungsberechtigt gewesen sei. Genehmigungshandlungen mit Bezug auf das Wirken von F._ liessen sich dem angefochtenen Urteil entgegen der vorinstanzlichen Erwägung nicht entnehmen. Sodann habe die Vorinstanz namentlich übersehen, dass Dritten gegenüber einzig die H._-Genossenschaft als Bauherrin aufgetreten sei und sämtliche relevanten Dokumente auf deren Namen lauteten, wie namentlich Baugesuchsunterlagen, Versicherungspolicen, Finanzrapporte der Litisdenunziatin oder Pläne und Beschriebe der Litisdenunziatin.
Diese Vorbringen betreffen allesamt Ausschnitte aus der vorinstanzlichen Beweiswürdigung, indem damit einzelne Elemente der Indizienkette in Frage gestellt werden, auf deren Grundlage die Vorinstanz auf die Schuldnerstellung der Beklagten schloss. Dass die Feststellung, wonach sie als Bestellerin aufgetreten sei, mit einem ganz bestimmten Aktenstück in offensichtlichem Widerspruch stehe, wogegen die Versehensrüge nach dem vorstehend Ausgeführten einzig weiterhelfen könnte, macht die Beklagte nicht geltend (vorstehende Erwägung 4.1; vgl. dazu Birchmeier, a.a.O., N. 9f zu Art. 55 OG, S. 210; Poudret, a.a.O., N. 1.6.3. zu Art. 55 OG S. 445). Ihre Vorbringen laufen vielmehr sowohl einzeln als auch in ihrer Gesamtheit auf eine im Berufungsverfahren unzulässige Kritik an der vorinstanzlichen Beweiswürdigung hinaus und sind daher nicht zu hören.
4.4 Die Beklagte macht in diesem Zusammenhang sinngemäss geltend, die Vorinstanz habe <ref-law> verletzt, indem sie aus der Genehmigung einer Abrechnung des Architekten auf eine Genehmigung des von F._ unterzeichneten Architektenvertrages durch die Beklagte geschlossen habe. Es kann indessen offen bleiben, ob die Vorinstanz Bundesrecht verletzt hat, indem sie aus der Genehmigung der Abrechnung auf eine Genehmigung des Architektenvertrages geschlossen hat, da gegebenenfalls wiederum lediglich ein Element aus der für die Passivlegitimation beweisbildenden Indizienkette in Frage gestellt würde, deren Würdigung im Rahmen des vorliegenden Verfahrens nicht zu prüfen ist und von der Beklagten auch nicht zulässigerweise im Rahmen einer staatsrechtlichen Beschwerde angefochten wurde (vgl. zur letzteren Möglichkeit Erwägung 4.1 vorne). Unter diesen Umständen fehlt der Beklagten ein Interesse an der Beurteilung dieser Rechtsfrage.
4.5 Die Beklagte rügt schliesslich als Verletzung des Beweisführungsanspruchs nach <ref-law>, dass die Vorinstanz auf die Anhörung des Zeugen F._ verzichtet habe. Wie die Beklagte selber ausführt, lehnte die Vorinstanz die Einvernahme dieses Zeugen indes mit Hinweis auf die Aktenlage ab, nach der die Passivlegitimation der Beklagten erwiesen sei, und weil der Zeuge insoweit glaubwürdig nichts mehr anderes aussagen könne. Damit hat die Vorinstanz eine antizipierte Beweiswürdigung vorgenommen, die durch <ref-law> nicht ausgeschlossen wird (<ref-ruling> E. 3c S. 223 f.; <ref-ruling> E. 2a S. 291). Was die Beklagte zur Begründung ihrer Rüge der Verletzung dieser Bestimmung vorbringt, läuft denn auch auf blosse Kritik an der (vorweggenommenen) Beweiswürdigung der Vorinstanz hinaus, die im Berufungsverfahren nicht zu hören ist.
4.6 Damit steht für das Bundesgericht verbindlich fest, dass die Beklagte als Bestellerin der von der D._ AG erbrachten Handwerkerleistungen aufgetreten ist. Die auf der abweichenden Sachverhaltsdarstellung der Beklagten gründende Rüge der Verletzung von Art. 1 und Art. 363 OR ist nicht zu hören. Die Vorinstanz hat kein Bundesrecht verletzt, indem sie die Beklagte gestützt auf ihre tatsächlichen Feststellungen und die genannten Bestimmungen zur Zahlung des ausstehenden Werklohnes verpflichtete.
4.6 Damit steht für das Bundesgericht verbindlich fest, dass die Beklagte als Bestellerin der von der D._ AG erbrachten Handwerkerleistungen aufgetreten ist. Die auf der abweichenden Sachverhaltsdarstellung der Beklagten gründende Rüge der Verletzung von Art. 1 und Art. 363 OR ist nicht zu hören. Die Vorinstanz hat kein Bundesrecht verletzt, indem sie die Beklagte gestützt auf ihre tatsächlichen Feststellungen und die genannten Bestimmungen zur Zahlung des ausstehenden Werklohnes verpflichtete.
5. Die Berufung ist abzuweisen, soweit darauf eingetreten werden kann. Ausgangsgemäss wird die Beklagte für das Verfahren vor Bundesgericht kosten- und entschädigungspflichtig (Art. 156 Abs. 1 und Art. 159 Abs. 2 OG).

Demnach erkennt das Bundesgericht:
Demnach erkennt das Bundesgericht:
1. Die Berufung wird abgewiesen, soweit darauf einzutreten ist.
1. Die Berufung wird abgewiesen, soweit darauf einzutreten ist.
2. Die Gerichtsgebühr von Fr. 2'500.-- wird der Beklagten auferlegt.
2. Die Gerichtsgebühr von Fr. 2'500.-- wird der Beklagten auferlegt.
3. Die Beklagte hat die Klägerin für das bundesgerichtliche Verfahren mit Fr. 3'000.-- zu entschädigen.
3. Die Beklagte hat die Klägerin für das bundesgerichtliche Verfahren mit Fr. 3'000.-- zu entschädigen.
4. Dieses Urteil wird den Parteien und dem Obergericht des Kantons Glarus schriftlich mitgeteilt.
Lausanne, 15. Oktober 2004
Im Namen der I. Zivilabteilung
des Schweizerischen Bundesgerichts
Der Präsident: Der Gerichtsschreiber: